sql >> Databasteknik >  >> RDS >> Mysql

Databasanslutning till MySQL timeout även efter inställning av c3p0.testConnectionOnCheckout=true

Vi började ha samma "Communications Link"-problem när vi uppgraderade viloläge till 4.3.x med JPA och C3P0 för anslutningspoolning.

Det verkar som att detta skulle vara ett problem med anslutningspoolen eftersom anslutningarna hölls längre än databasen wait_timeout (vilket var standard 8 timmar) trots mina C3P0-inställningar. Jag åtgärdade dock problemet genom att ändra vilolägeskonfigurationen i vår persistence.xml med:

<property name="hibernate.connection.release_mode" value="after_transaction" />

Det verkar som om standardbeteendet i viloläge ändrats till att inte släppa anslutningen efter transaktioner, så du måste uttryckligen ställa in det här läget om du använder pooling.



  1. Automatisk ökning för Oracle

  2. Hur man använder BETWEEN-villkoret med hjälp av huvudfrågan och underfrågor

  3. SQL Array-sökning

  4. PHP &MYSQL:använder grupp efter för kategorier