現在、以下の様なレンタルサーバーでサイトを運営しています。
FreeBSD 8.1-RELEASE-p12
Apache/2.2.23
PHP 5.2.17
MySQL 5.1
数年間問題なく運用できていたのですが、最近、PHPプログラムからMySQLにinsertやupdateを行う際にMySQLへの接続エラーが発生し、エラー発生以降、MySQLへの接続ができなくなります。
サーバーダウンはしておらず、ApacheやPHPは正常に動作しています。MySQLを再起動すると問題なく接続できるようになります。
サーバー仕様の都合で、MySQLのログを見たりmy.cnfを編集することができないため、原因を特定できない状態です。
このような情報で、想定される原因と解決方法をお教えください。
よろしくお願いします。
※サーバー会社にも問い合わせ済みですが回答は連休明けになりそうです。
MySQLのエラーログを見ないと分かりません。
http://dev.mysql.com/doc/refman/5.1/ja/error-log.html
可能性としてはDBロックが高そうです。
LOCK命令でテーブルのロック状態を取得してみて下さい。
http://wiki.bit-hive.com/tomizoo/pg/MySQL%20%A5%C6%A1%BC%A5%D6%A5%EB%A4%CE%A5%ED%A5%C3%A5%AF
これが原因だとすると、プログラムの排他制御が甘いと思われます。
ありがとうございます。
2013/05/04 23:53:24ご指摘いただいた点を中心にプログラムを見なおしてみたいと思います。