MySQLのエラーを回避する方法は?

解決


ゆうた  2017-03-18 20:12:28  No: 48605  IP: [192.*.*.*]

お世話になってます、Windows10、DelphiXe8で開発しています。ある常駐プログラムでタイマーを使い3分に1回MySQLサーバーに接続しています。タイムアウトの設定が原因かどうかわからないのですが50分程経過すると以下のメッセージがMySQLから出力されます。常駐プログラムなので接続出来ない事があるのは仕方ないのでTry、Except文で回避させエラーが出るのを抑えているのですが出てしまいます。どこが間違っているかわかりましたらお教え下さい。


「エラメッセージ」
[FireDAC][Phys][MySQL] Can't connect to MySQL server on '111.22.33.444' (0)

「Delphiプログラム」
procedure TFkintaiki.Timer_subTimer(Sender: TObject);
begin
  try
    FDConnection1.Connected :=True;
    FDQuery1.Open;
  except
    FDQuery1.Close; 
    FDConnection1.Connected :=False;
  end;
end;

「参考 MySQL、タイムアウトの設定変更」
set global wait_timeout = 576000;
set global interactive_timeout = 576000;

編集    削除
igy  2017-03-19 06:19:49  No: 48606  IP: [192.*.*.*]

> Try、Except文で回避させエラーが出るのを抑えているのですが出てしまいます。

あまり詳しくないのですが・・・

実際に、ソースコードでエラーを出している個所が、どこなのか調べてみるのは、いかがですか?

編集    削除
通りすがり  2017-03-19 06:29:07  No: 48607  IP: [192.*.*.*]

MySQLのサーバはリモート(別のPC上に存在)ですか?ローカルに存在するMySQLでも状況は変わりませんか?

編集    削除
ゆうた  2017-03-20 23:07:29  No: 48608  IP: [192.*.*.*]

お休みの処有難う御座います。

別のPCでも同じ症状が出ました。

コメントを詳細に付け加えもう少しやってみます。

編集    削除
ゆうた  2017-03-22 00:46:33  No: 48609  IP: [192.*.*.*]

コメントを詳細に付け加えてやってみたら解決しました。

有難う御座います。

編集    削除
ゆうた  2017-03-22 00:47:46  No: 48610  IP: [192.*.*.*]

解決ボタン忘れてました。

編集    削除