sql >> Databasteknik >  >> RDS >> Mysql

Anslutningen till MySql avbryts automatiskt. Hur konfigurerar man Connector/J korrekt?

Texten beskriver tre lösningar för att förhindra att anslutningen avbryts:

  1. Konfigurera anslutningssträngen med autoReconnect=true . Detta är en egenskap för URL-anslutningssträngen, som fungerar på drivrutinsnivå. Du måste ändra anslutningssträngen i datakällans konfiguration.

    url="jdbc:mysql://localhost:3306/confluence?autoReconnect=true"
    
  2. Öka timeouten. Detta är normalt en egenskap hos databasen. Du kan öka detta värde för att se om du får mindre anslutning avbryts.

  3. Konfigurera anslutningspoolen för att testa anslutningsvaliditeten. Detta görs vid poolen, inte på förarnivån. Detta beror på vilken datakälla implementering du använder. Men det bör vara konfigurerbart i egenskapen för datakällan, om du använder en poolad, t.ex. c3p0 .

Ytterligare kommentarer:

  • Datakällan/poolen kan också ha en timeout, vilket motsvarar den tid en ledig anslutning finns kvar i poolen. För att inte förväxlas med db timeout.
  • Det finns flera sätt att testa giltigheten av en anslutning. Ett vanligt sätt är att ha dummy testbord. Poolen kommer att utfärda ett val på dummytestbordet för att se om anslutningen fortfarande är OK.


  1. Standard tabelllåstips på SQL Server 2005/2008

  2. MySql Infoga Välj uuid()

  3. Anropa en lagrad procedur med parameter i c#

  4. PHP/MySQL Infoga null-värden