ローカル マシンでは、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