GNU/Linux >> Linux Esercitazione >  >> Linux

Eccezione per le comunicazioni di connettività del database Java MySQL

Java Database Connectivity (JDBC) è l'API Java che consente di accedere ed eseguire query e comandi su un database.

Questo articolo descrive alcuni passaggi per la risoluzione dei problemi di com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure errore, che si verifica quando si tenta di connettersi a un database utilizzando JDBC.

Il Communications link failure errore si verifica quando non è possibile raggiungere il database. Di seguito sono elencate le possibili cause e le loro soluzioni:

L'indirizzo IP o il nome host in URL JDBC è sbagliato.

Verifica e verifica che il nome host o l'indirizzo IP possano rispondere utilizzando ping .

Il server DNS locale non riconosce il nome host nell'URL JDBC

Aggiorna il tuo DNS o usa l'indirizzo IP in URL JDBC invece.

Il numero di porta è mancante o errato nell'URL JDBC

Verifica che l'IP sia ben configurato nel database MySQL® my.cnf file utilizzando il tuo editor di testo preferito.

Per trovare il my.cnf file, esegui il comando seguente per verificare le impostazioni di MySQL:

mysql --help | grep "Default options" -A 1 

Se ancora non riesci a trovare il file, prova a eseguire il comando seguente:

find / -name my.cnf

Puoi anche cercare nelle posizioni predefinite:

  • /etc/my.cnf
  • /etc/mysql/my.cnf
  • /usr/etc/my.cnf
  • ~/.my.cnf

Il server del database non accetta connessioni TCP/IP

Verifica che mysqld il servizio è in esecuzione. Per verificare lo stato di mysqld service, esegui i seguenti comandi in base alla tua distribuzione Linux®:

Per CentOS® 6 o Red Hat® Enterprise Linux® (RHEL) 6:

service mariadb status

Per CentOS 7+ o RHEL 7+:

systemctl status mariadb.service

Per il sistema operativo Ubuntu®:

/etc/init.d/mysql status

Il database è inattivo o spento

Esegui il comando seguente per avviare il database MySQL:

Per CentOS 6 / RHEL 6:

service mariadb start

Per CentOS 7+/RHEL 7+:

systemctl start mariadb.service

Per il sistema operativo Ubuntu:

/etc/init.d/mysql start

Il server del database ha esaurito le connessioni

Riavvia il database e verifica se il tuo codice ha un problema quando chiudi le connessioni.

Le connessioni tra Java e DB stanno bloccando la comunicazione

Disabilita il firewall o il proxy. In alternativa, configurali per consentire o inoltrare la porta. Se stai usando CentOS 6/RHEL 6, consulta l'articolo di iptables.


Linux
  1. Domande frequenti sulla distribuzione di MySQL

  2. Come copiare un database MySQL

  3. Nozioni di base su utenti e database MySQL

  4. Duplica l'intero database MySQL

  5. Rinominare il database MySQL

Come eseguire il backup e il ripristino di un database MySQL

Elenca le tabelle in un database MySQL

Server database MySQL

Come creare un database in MySQL

Panoramica di MySQL

Recupera database mysql - mysql/mysqldump restituisce la tabella <database>.<tablename> non esiste (1146)