Решаем ошибку Lock wait timeout exceeded; try restarting transaction.

Главная  >>  Backend  >>  Решаем ошибку Lock wait timeout exceeded; try restarting transaction.

В этой статье приведу короткий и самый быстрый вариант решения ошибки «Lock wait timeout exceeded; try restarting transaction».

Конечно, если ошибка у Вас в системе — нужно искать и решать корень проблемы — например, незакрытые транзакции. Я же приведу алгоритм быстро, в моменте, решения.

Итак, если Вы выполняете запросы, не заходя на сервер MySql — пропустите первый шаг:
1) Заходим в MySQL с консоли:

Замените %YOUR_LOGIN% на свой логин, после чего введите свой Пароль.

2) Выполните:

Этот запрос покажет Вам список запущенных процессов — один из которых, вероятно, блокирует Вашу таблицу. Обратите внимание на колонку Time — процесс, который завис с большой вероятностью — тот, который Вам нужен.

3) Выполните команду ниже с ID процесса, который может блокировать Вашу БД:

4) Повторно выполните свой первый запрос, после которого Вы получали ошибку. Если она исчезнет — значит Вы правильно определили потенциально нежелательный процесс.

Надеюсь статья была полезной. Удачи!