質問: サイトが重く、load averageが高い サイトが重く感じたので、topコマンドで見てみるとload averageが7~10をいったりきたりと高い値でした。 load average: 8.57, 7.08, 10.73 tasks: 114 total, 1 running, 113 sleeping, 0 stopped, 0 zombie cpu(s): 80.2%us, 19.8%sy, 0.0%ni, 0.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st mem: 3368216k total, 2805768k used, 562448k free, 298348k buffers swap: 2048276k total, 80k used, 2048196k free, 1977940k cached また、mysqldの%cpuが200近くまでなっており異常に突出していました。 mysql 15 0 164m 39m 4096 s 196.7 1.2 221:52.29 mysqld これはmysqlへの負荷が高いのかなと思い、 show full processlist をみてみたものの、よくわかりませんでした。 そこでslow queryログを取ろうと思い、3秒以上で出力するように、my.cnfなどに設定したものの、slow queryログファイル自体がなかなか作成されません。 3秒以上掛かるクエリがないのか、それとも設定が間違っているのかは分かりません・・・ また、その際にmysqldをリスタートしたものの、load averageやcpuなどはほとんど変わりませんでした。 topでみたときのmysqldの%cpuが200近いのが気になって仕方ないのですが、他にどこをみたらいいでしょうか。 また、どのような対処法などありますでしょうか。 どうぞよろしくお願い致します。
回答: ロードアベレージが、50ということは、run状態あるいはrun readyのプロセスが、その前後で、50個あったということです。 そういうプロセスは、topの表示のだいたい上位にならびますが、どんなプロセスが並んでいるのでしょう? mysqldだけで、そんなに沢山走っているのでしょうか? mysql 1個しかなくて、そういう表示になってるなら、まず、mysqlをrestartします。 あと、mysqlのログファイルも要チェックです。