sql >> Databasteknik >  >> RDS >> Mysql

vad är java.io.EOFException, meddelande:Kan inte läsa svar från servern. Förväntas läsa 4 byte, läsa 0 byte

Anslutningen har misslyckats, möjligen på grund av en brandvägg i vilotid, etc. Om du inte har din JDBC-drivrutin konfigurerad för att återansluta vid fel, kommer detta fel inte att försvinna om du inte öppnar en ny anslutning.

Om du använder en databasanslutningspool (du är använder du en, eller hur?), då vill du förmodligen aktivera dess anslutningskontrollfunktioner som att skicka en fråga för att kontrollera om anslutningen fungerar innan du lämnar tillbaka den till applikationen. I Apache commons-dbcp kallas detta för validationQuery och är ofta inställd på något enkelt som SELECT 1 .

Eftersom du använder MySQL bör du använda en Connector/J-specifik "ping"-fråga som är lättare än att faktiskt utfärda en äkta SQL-fråga och ställa in din valideringsfråga till /* ping */ SELECT 1 (ping-delen behöver för att vara exakt ).



  1. Hur justerar man skärminställningar för mysql-kommandoraden?

  2. MySQL-databas med unika fält ignorerade slututrymmen

  3. MySQL-markörbaserad paginering med flera kolumner

  4. SQL-fråga:ordning efter teckenlängd?