- PR -

MySQL server has gone away エラー

1
投稿者投稿内容
ゆず
会議室デビュー日: 2005/05/29
投稿数: 18
投稿日時: 2007-10-01 08:39
お世話になります。

現在、MySQL4.1+VB.NETを使って
Windowsアプリケーションを作っています。

MySQLのデフォルトですと接続をして8時間以上何もしないと
サーバーへの接続がクローズしてしまい
MySQL server has gone away エラーが起きてしまいます。

作成中のアプリケーションは
外部から送られてくるファイルを常時待ち
ファイルが送られてきた時点でその内容をデータベースへ書き込む
ということをしているので
常にMySQLへの接続を保っていたいのですが

1時間に数百ファイル来ることや
1日に1ファイルもこないこともあるため

MySQLへのアクセスが8時間以上途絶えた場合
上記エラーがおきてしまいます。

このMySQLのデフォルト8時間を
無期限延長する方法をご存知でしたら教えていただけないでしょうか。

宜しくお願いいたします。
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2007-10-01 10:47
コネクションをオープンしたままにしていませんか?
しっかり閉じておけばあとはコネクションプーリングがどうにかしてくれる気がするんですが...
_________________
かるあ のメモスニペット
ゆず
会議室デビュー日: 2005/05/29
投稿数: 18
投稿日時: 2007-10-01 11:49
コネクションはオープンしたままにしています。
短時間に接続・切断を繰り返すと
途中から接続がうまくいかなくなったので
システム起動からシステムを終了するまで
ずっと接続状態にしています。
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2007-10-01 13:07
もうご覧になっているかも知れませんが、このページを見ると wait_timeout 環境変数を設定することでタイムアウトの時間を延長できるようですよ。タイムアウトの時間を無限にできるかはわかりませんが…
http://dev.mysql.com/doc/refman/4.1/ja/gone-away.html

それよりは、コネクションの接続・切断の繰り返しでエラーになった原因を調べて解決するほうがすっきりする気はしますね。
_________________
かるあ のメモスニペット
1

スキルアップ/キャリアアップ(JOB@IT)