dポイントプレゼントキャンペーン実施中!

お世話になります。
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 です。
もしかして、トランザクションの頻度が問題なのでしょうか?

しかし、それによって結果の取得に失敗するだけなら、エラー表示等でやり直すように促せばいいのですが、それによってしばしばデータベース停止になるのでは、話になりません。
ご意見・ご指導の程よろしくお願いいたします。

A 回答 (1件)

Mysql を 4.0.X 系 (又はそれ以上のバージョン)


にすればいいのでは・・?

古いバージョンでのバグかもしれません。

この回答への補足

レンタルサーバーですので、バージョンアップは期待できません。
できれば私も、副問合せが可能なバージョンを使いたいのですけど^^;

こういった現象は皆さん経験ありませんか?<不可解なエラー

補足日時:2004/11/10 01:06
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!