【mysql】「Lock wait timeout exceeded~」のエラー対処法

この記事について

環境mysql
目的大した処理でもないのにERROR 1205 (Lock wait timeout exceeded)が出るのを解消する
結果show processlistで長時間実行中のスレッドを見つけてkillしたら通った

つまずきポイント要約

  • とても長い時間実行中のスレッドがロックを握っていた

事象

大して大きな処理のクエリでもないのにエラーが出た

ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction

対処

実行中のスレッドを確認してみる。

実行したクエリ

mysql> show processlist;
mysql

とても長い時間、実行中のスレッドを発見。プロセスを強制終了する。

プロセスを終了させるクエリ

mysql> kill 226948616;

再び目的のクエリを実行すると、エラーも出ずにうまくいった。

関連記事

タイトルとURLをコピーしました