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

Impossibile aprire JPA EntityManager per la transazione; l'eccezione annidata è javax.persistence.PersistenceException

È presente CommunicationsException:collegamento di comunicazione non riuscito.

Se ricevi una SQLException:Connessione rifiutata o Connessione scaduta o una specifica MySQL

CommunicationsException: Communications link failure

allora significa che il DB non è affatto raggiungibile. Ciò può avere una o più delle seguenti cause:

  • L'indirizzo IP o il nome host nell'URL JDBC è errato.
  • Il nome host nell'URL JDBC non è riconosciuto dal server DNS locale.
  • Numero di porta mancante o errato nell'URL JDBC.
  • Il server DB è inattivo.
  • Il server DB non accetta connessioni TCP/IP.
  • Il server DB ha esaurito le connessioni.
  • 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:

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

Fonte:Ulteriori dettagli