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

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

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

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

実行したクエリ
----------------------------------------------------------
mysql> show processlist;
----------------------------------------------------------
mysql

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

プロセスを終了させるクエリ
----------------------------------------------------------
mysql> kill 226948616;
----------------------------------------------------------

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