PG WORKS

PHPやLinux(サーバー)などのノウハウや、便利なツールを紹介していきます。

MySQLが重いときに使うコマンド

SHOW FULL PROCESSLIST

クエリーが改善されないときや重いと思ったときに、上記のコマンドを使うことで
実行中のスレッドを見ることができます。

「Info」にクエリーが表示されるため、その隣に表示される「Time」を見ながら
重いクエリーを判定できると思います。
※FULLをつけないとInfoの方には100文字までしか表示されません。

SHOW GLOBAL VARIABLES

MySQLサーバの設定値を確認できます。

MySQLではないですが、MySQLを使っているページに、アクセスが集中するとプロセスが溜まり重くなります。
プロセス数の確認は下記のコマンドになります。

ps aux | grep httpd | grep -v "\(root\|grep\)" | wc -l

プロセス数がたまっているときに、INSERTすると、エラーになりやすいため、INSERTできなかったときの処理(時間を置いて後でINSERTするなど)が必要になると思います。