Ho un'installazione di istanza di tomcat ma la connessione di database che ho configurato in context.xml continua a morire dopo periodi di inattività.Java + Tomcat, connessione al database Dying?
Quando controllo i ceppi ottengo il seguente errore:
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: L'ultimo pacchetto ricevuto con successo dal server was68051 secondi fa. L'ultimo pacchetto inviato al server era 68051 secondi , che è più lungo del valore configurato dal server di "wait_timeout". È necessario considerare di scadere e/o verificare la validità della connessione prima di utilizzarla nell'applicazione, aumentare i valori configurati del server per i timeout del client o utilizzare la proprietà di connessione Connector/J 'autoReconnect = true' per evitare questo problema.
Ecco la configurazione in context.xml:
<Resource name="dataSourceName"
auth="Container"
type="javax.sql.DataSource"
maxActive="100"
maxIdle="30"
maxWait="10000"
username="username"
password="********"
removeAbandoned = "true"
logAbandoned = "true"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/databasename?autoReconnect=true&useEncoding=true&characterEncoding=UTF-8" />
sto usando Autoreconnect = tura come l'errore dice di fare, ma la connessione mantiene morire. Non ho mai visto questo accadere prima.
Ho anche verificato che tutte le connessioni al database vengano chiuse correttamente.
Bello. Ho impostato i parametri in context.xml e lascerò riposare per 24 ore. Se non funziona, non accetto la risposta. Ma sembra promettente! Grazie! –