Из сценария я тысячи раз отправлял такой запрос в мою локальную базу данных:
update some_table set some_column = some_value
Я забыл добавить часть where, поэтому для одного и того же столбца было установлено одинаковое значение для всех строк в таблице, и это было сделано тысячи раз, и столбец был проиндексирован, поэтому соответствующий индекс, вероятно, обновлялся слишком много раз ,
Я заметил, что что-то не так, потому что это заняло слишком много времени, поэтому я убил сценарий. С тех пор я даже перезагрузил свой компьютер, но что-то застряло в таблице, потому что выполнение простых запросов занимает очень много времени, и когда я пытаюсь удалить соответствующий индекс, появляется следующее сообщение:
Lock wait timeout exceeded; try restarting transaction
Это таблица innodb, поэтому зависшая транзакция, вероятно, неявная. Как я могу исправить эту таблицу и удалить из нее зависшую транзакцию?
SHOW FULL PROCESSLIST
?