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

Warum bricht Hibernate/JDBC/MySQL Verbindungen nach etwa einem Tag ab?

Der MySQL-JDBC-Treiber läuft nach 8 Stunden Inaktivität ab und trennt die Verbindung.

Sie können autoReconnect=true setzen in Ihrer JDBC-URL, und dies führt dazu, dass der Treiber erneut eine Verbindung herstellt, wenn Sie versuchen, eine Abfrage durchzuführen, nachdem die Verbindung getrennt wurde. Aber das hat Nebenwirkungen; Beispielsweise können Sitzungsstatus und Transaktionen nicht über eine neue Verbindung aufrechterhalten werden.

Wenn Sie autoReconnect verwenden , wird die JDBC-Verbindung wiederhergestellt, aber Ihre Abfrage, bei der die Ausnahme aufgetreten ist, wird nicht automatisch erneut ausgeführt. Sie müssen also SQLException abfangen in Ihrer Anwendung und wiederholen Sie Abfragen.

Lesen Sie http://dev. mysql.com/doc/refman/5.0/en/connector-j-reference-configuration-properties.html für weitere Details.