ローカルマシン上のMySQLクライアントは、しばらくサーバーと通信しないとフリーズします。

ローカルマシン上のMySQLクライアントは、しばらくサーバーと通信しないとフリーズします。

ローカル マシンでは、MySQL クライアントを使用してリモート MySQL サーバー (Amazon EC2 インスタンス) に接続します。多数のクライアントをテストしましたが、何かをしてから数分後に (アイドル状態のまま) 何らかの操作を実行しようとすると、すべてのクライアントがフリーズします (強制終了する必要があります)。

サーバーが何らかのタイムアウトを実行できるかどうか、または何らかのクエリの実行時にサーバーがフリーズする理由があるかどうかを尋ねています。

サーバー上で実行されている Web サイトは問題なく動作し続けているので、リモート接続に問題があると言えます。

これが私のマイ.cnf:http://pastebin.com/S4PmA3j3

フリーズ中はサーバー上の CPU は使用されません。

ubuntu@ip-10-48-239-133:~$ top
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
  686 mysql     20   0  874m  66m 5100 S  0.0 11.3  36:55.78 mysqld

接続も正常です:

ubuntu@ip-10-48-239-133:~$ netstat -tup
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 ip-10-48-239-133.:mysql MY.LOCAL.IP:59633       ESTABLISHED -               
tcp        0      0 ip-10-48-239-133.:mysql MY.LOCAL.IP:58964       ESTABLISHED -               
tcp        0    384 ip-10-48-239-133.eu:ssh MY.LOCAL.IP:45745       ESTABLISHED -               
tcp        0      0 ip-10-48-239-133.eu:ftp MY.LOCAL.IP:54109       ESTABLISHED -          

答え1

おそらく、クライアントとサーバー間のステートフルファイアウォールの接続テーブルでタイムアウトが発生しているのでしょう。クライアントで実行されているOSがわかりません。Linuxの場合は、tcp_keepalive_time

関連情報