Auf meinem lokalen Rechner verwende ich einen MySQL-Client, um eine Verbindung zu einem Remote-MySQL-Server (einer Amazon EC2-Instanz) herzustellen. Ich habe viele, viele Clients getestet, aber alle frieren ein (ich muss sie zwangsweise schließen), wenn ich versuche, nach einigen Minuten, in denen ich etwas getan habe, eine Operation auszuführen (Leerlauf).
Ich frage, ob der Server eine Art Timeout durchführen kann oder ob es einen Grund gibt, warum er bei der Ausführung mancher Abfragen einfrieren kann.
Ich muss sagen, dass die auf dem Server laufende Website weiterhin ohne Probleme funktioniert, es liegt also ein Fehler bei der Remote-Verbindung vor.
Hier ist meinmeine.cnf:http://pastebin.com/S4PmA3j3
Während des Freeze wird die CPU auf dem Server nicht genutzt:
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
Und die Verbindungen sind ok:
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 -
Antwort1
Es handelt sich wahrscheinlich um ein Timeout in der Verbindungstabelle in einer Stateful Firewall zwischen den Clients und dem Server. Sie sagen nicht, welches Betriebssystem auf den Clients läuft. Wenn es Linux ist, versuchen Sie,TCP_Keepalive_Zeit