sql >> Database teknologi >  >> RDS >> Mysql

hvad er java.io.EOFException, Besked:Kan ikke læse svar fra server. Forventet at læse 4 bytes, læse 0 bytes

Forbindelsen er mislykket, muligvis på grund af en firewall idle-timeout osv. Hvis du ikke har din JDBC-driver konfigureret til at oprette forbindelse igen ved fejl, så vil denne fejl ikke forsvinde, medmindre du åbner en ny forbindelse.

Hvis du bruger en databaseforbindelsespulje (du er ved at bruge en, ikke?), så ønsker du sikkert at aktivere dens forbindelseskontrolfunktioner som at udstede en forespørgsel for at kontrollere, om forbindelsen virker, før du sender den tilbage til applikationen. I Apache commons-dbcp kaldes dette validationQuery og er ofte sat til noget simpelt som SELECT 1 .

Da du bruger MySQL, bør du bruge en Connector/J-specifik "ping"-forespørgsel, der er lettere end faktisk at udstede en ægte SQL-forespørgsel og indstille din valideringsforespørgsel til /* ping */ SELECT 1 (ping-delen behov for at være præcis ).



  1. vælg count(*) fra tabellen over mysql i php

  2. Hvordan virker COPY, og hvorfor er det så meget hurtigere end INSERT?

  3. Søger du efter tilgængelighed med MySQL (og PHP)?

  4. MySQL – ELT() og FILED() funktioner til at udtrække indeksposition fra liste