Mysqlがすべてのリソースを消費するために、私のWebサイトが「ダウンする」ことがありますが、それでもhttpdプロセスの作成が止まらないと思います。それは可能ですか? Apacheを再起動すると、これらのプロセスが消え、mysqlプロセスによるCPU消費量がゆっくりと低下し、サイトが再びオンラインになります。
とにかくボトルネックを見つけるのに苦労しています。このサイトには多くのcronジョブ(phpスクリプト)があり、それぞれが合計実行時間を含むログを生成します。
そのため、最初に考えたのは、時間がかかるスクリプトを見つけようとすることでしたが、そのうちの1つだけでmysqlサーバーの速度が低下し、すべてのスクリプトの実行時間が長くなるため、それは不可能でした。
何かアドバイス?
ボトルネックを見つける方法はどこで学ぶことができますか?
注:私はCentOS、Apache 2、php 5.3、およびmysql5を使用しています
遅いクエリログから始める必要があります: http://dev.mysql.com/doc/refman/5.1/en/slow-query-log.html
Max_used_connectionsがmax_connectionsよりも高いかどうかを確認することもできます。
SHOW VARIABLES LIKE 'max\_connections';
SHOW STATUS LIKE 'max\_used\_connections';