Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Java-App, Thread hängt nach dem Beenden der MySQL-Verbindung

Laut MySQL Dokumentation "kill connection thread_id" sollte die Verbindung beenden, die der gegebenen thread_id zugeordnet ist. Aber es sieht so aus, als würde das nicht passieren (in diesem Fall wartet der Java-Thread ewig auf eine Antwort). Vielleicht können Sie mit einem Netzwerktool (z. B. netstat) überprüfen, ob die Verbindung tatsächlich geschlossen ist .

Ich bin schon früher auf hängende MySQL-Verbindungen gestoßen und musste auf die Verwendung des socketTimeout JDBC-Verbindungsparameter (aber seien Sie vorsichtig:das socketTimeout muss größer sein als die Zeit, die zum Abschließen der am längsten laufenden Abfrage benötigt wird). Sie können auch versuchen, AbfrageZeitüberschreitung für eine vorbereitete Erklärung.