sql >> Databasteknik >  >> RDS >> Mysql

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Kommunikationslänkfel

Så du har en

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Kommunikationslänkfel
java.net.ConnectException:Anslutning nekad

Jag citerar från det här svaret som också innehåller en steg-för-steg MySQL+JDBC handledning:

Om du får en SQLException: Connection refused eller Connection timed out eller en MySQL-specifik CommunicationsException: Communications link failure , då betyder det att DB inte är tillgänglig alls. Detta kan ha en eller flera av följande orsaker:

  1. IP-adress eller värdnamn i JDBC URL är fel.
  2. Värdnamn i JDBC URL känns inte igen av den lokala DNS-servern.
  3. Portnummer saknas eller är fel i JDBC URL.
  4. DB-servern är nere.
  5. DB-servern accepterar inte TCP/IP-anslutningar.
  6. DB-servern har slut på anslutningar.
  7. Något mellan Java och DB blockerar anslutningar, t.ex. en brandvägg eller proxy.

För att lösa det ena eller det andra, följ följande råd:

  1. Verifiera och testa dem med ping .
  2. Uppdatera DNS eller använd IP-adressen i JDBC URL istället.
  3. Verifiera det baserat på my.cnf av MySQL DB.
  4. Starta DB.
  5. Verifiera om mysqld har startat utan alternativet --skip-networking option .
  6. Starta om DB:n och fixa din kod så att den stänger anslutningarna finally .
  7. Inaktivera brandvägg och/eller konfigurera brandvägg/proxy för att tillåta/vidarebefordra porten.

Se även:



  1. Skriva rekursiv CTE med Entity Framework Fluent syntax eller Inline-syntax

  2. Virtuella kolumner och funktionella index

  3. SQLException:Protokollbrott. Oracle JDBC-drivrutinsproblem

  4. SQL Server ALLA operatörer förklaras