よかろうもん!

アプリからインフラまで幅広くこなすいまどきのクラウドエンジニアが記す技術ブログ

実行されているSQLを確認/強制終了する方法

忘れない様に備考録として。

MySQLがCPUリソースを占有している場合は、以下のコマンドで何が起こっているのかを調査できる。

mysql > SHOW FULL PROCESSLIST;

Id User Host db Command Time State Info
11444 root localhost skip_test Sleep 53 NULL
12033 root localhost skip_test Sleep 1 NULL
12036 root localhost skip_test Sleep 3 NULL
15455 root localhost NULL Query 0 NULL show full processlist

※infoカラムにSQLが表示されていたりします。

SHOW PROCESSLIST 構文の詳細


プロセス(実行されているSQL)を強制終了するには、killコマンドで。

mysql> KILL [Id];

※[Id] には SHOW FULL PROCESSLIST コマンドで取得したIdを入力してください。

ただし、KILLコマンドを行うとテーブルが破損してしまう可能性もあるため、注意しないといけません。

KILL構文の詳細