• 締切済み

MySQLの不可解なエラー

お世話になります。 PHP4.3.7で、MySQL3.23.56を使ったアプリケーションを作っておりますが、ある決まった場所にてSQLエラーが発生し、さらにエラー発生の何度かに一度、MySQLサーバーが停止してしまいます。 ここで、SQL構文に間違いがあるのでしたら、話は早いのですが、phpMyAdminから同じSQLを流しても問題なく実行されますし、何より、毎回エラーになるわけでもないのです。 INNER JOIN、LEFT JOIN で4テーブルほど結合していましたが、エラーが気になったため、結合をやめ、3つのマスタテーブルをそれぞれ取得し、連想配列を使って主テーブルのデータとPHPで連結してみました。 が、結局、この機能のところでは、数回に一回、エラーを出してしまいます。 こういった現象は何が原因と考えられますか? SQLを変更しても同じ現象が出るため、ここにSQL文を記述しても参考になるとは思いませんが、念のため掲載しておきます。 $SQL =<<<_SQL_ SELECT clm1, clm2, clm3, clm4, clm5, clm6, clm7, clm8 FROM TABLE1 ORDER BY clm1 LIMIT 0,50 _SQL_ $res = mysql_quert($SQL); とし、$resが取得できない場合にそのSQLのログをとりました。(このSQL文の結果が0件になることは皆無です) 全く何の変哲もない基本的なSQL文に変更したので、これが原因とはとても考えられません。 TABLE1 は、かなりの頻度でUPDATEがかかる、アプリケーションの主になるテーブルで、ユーザー情報を保持しています。トランザクション制御を行うので、BerkeleyDB です。 もしかして、トランザクションの頻度が問題なのでしょうか? しかし、それによって結果の取得に失敗するだけなら、エラー表示等でやり直すように促せばいいのですが、それによってしばしばデータベース停止になるのでは、話になりません。 ご意見・ご指導の程よろしくお願いいたします。

みんなの回答

  • moon_night
  • ベストアンサー率32% (598/1831)
回答No.1

Mysql を 4.0.X 系 (又はそれ以上のバージョン) にすればいいのでは・・? 古いバージョンでのバグかもしれません。

ieyasu
質問者

補足

レンタルサーバーですので、バージョンアップは期待できません。 できれば私も、副問合せが可能なバージョンを使いたいのですけど^^; こういった現象は皆さん経験ありませんか?<不可解なエラー

関連するQ&A