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

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:collegamento di comunicazione non riuscito

Quindi, hai un

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:collegamento di comunicazione non riuscito
java.net.ConnectException:connessione rifiutata

Sto citando da questa risposta che contiene anche un tutorial passo passo su MySQL+JDBC:

Se ricevi un SQLException: Connection refused o Connection timed out o un CommunicationsException: Communications link failure specifico per MySQL , allora significa che il DB non è affatto raggiungibile. Ciò può avere una o più delle seguenti cause:

  1. L'indirizzo IP o il nome host nell'URL JDBC è errato.
  2. Il nome host nell'URL JDBC non è riconosciuto dal server DNS locale.
  3. Numero di porta mancante o errato nell'URL JDBC.
  4. Il server DB è inattivo.
  5. Il server DB non accetta connessioni TCP/IP.
  6. Il server DB ha esaurito le connessioni.
  7. Qualcosa tra Java e DB sta bloccando le connessioni, ad es. un firewall o un proxy.

Per risolvere l'uno o l'altro, segui i seguenti consigli:

  1. Verificali e testali con ping .
  2. Aggiorna il DNS o utilizza invece l'indirizzo IP nell'URL JDBC.
  3. Verificalo in base a my.cnf di MySQL DB.
  4. Avvia il DB.
  5. Verifica se mysqld è stato avviato senza l'opzione --skip-networking option .
  6. Riavvia il DB e correggi il codice in modo che chiuda le connessioni in finally .
  7. Disabilita il firewall e/o configura firewall/proxy per consentire/inoltrare la porta.

Vedi anche: