Отменить запрос в MySql
У меня есть запрос, работающий в течение нескольких часов, если я отменим этот запрос, что произойдет с базой данных?
Запрос является ALTER TABLE
это добавляет новый столбец.
ОБНОВЛЕНИЕ: я выполнил сценарий таким образом
mysql -u username -p database
mysql> ALTER TABLE `table_name` ADD COLUMN `new_column` INT(1);
2 ответа
AFAIK вы могли бы запустить:
Чтобы увидеть, что это за нить, убейте ее:
УБИТЬ [СОЕДИНЕНИЕ | QUERY] thread_id;
Во время ALTER TABLE флаг уничтожения проверяется перед чтением каждого блока строк из исходной таблицы. Если был установлен флаг уничтожения, оператор отменяется, а временная таблица удаляется.
О побочных эффектах я не смогу рассказать точно, что может произойти.
Я могу ошибаться, но если вы не укажете BEGIN TRANSACTION
каждая команда является отдельной транзакцией.
Таким образом, при отмене запроса не должно быть никаких побочных эффектов.