在本地计算机上,我使用 MySQL 客户端连接到远程 MySQL 服务器(Amazon EC2 实例)。我测试了许多客户端,但如果我在几分钟后尝试执行任何操作(空闲),它们都会冻结(我必须强制关闭它们)。
我询问的是服务器是否可以执行某种类型的超时,或者是否有原因导致它在某些查询执行时冻结。
我不得不说,服务器上运行的网站继续工作没有任何问题,所以远程连接出现了问题。
这是我的我的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
这可能是客户端和服务器之间的状态防火墙中的连接表超时。你没有说明客户端上运行的是什么操作系统。如果是 Linux,请尝试减少tcp_keepalive_time