Hay CommunicationsException:falla en el enlace de comunicaciones.
Si obtiene una SQLException:conexión rechazada o conexión agotada o un MySQL específico
CommunicationsException: Communications link failure
entonces significa que la base de datos no es accesible en absoluto. Esto puede tener una o más de las siguientes causas:
- La dirección IP o el nombre de host en la URL de JDBC son incorrectos.
- El servidor DNS local no reconoce el nombre de host en la URL de JDBC.
- Falta el número de puerto o es incorrecto en la URL de JDBC.
- El servidor DB está inactivo.
- El servidor DB no acepta conexiones TCP/IP.
- El servidor DB se ha quedado sin conexiones.
- Algo entre Java y DB está bloqueando las conexiones, p. un cortafuegos o un proxy.
Para solucionar lo uno o lo otro, sigue los siguientes consejos:
- Verifíquelos y pruébelos con ping.
- Actualice el DNS o use la dirección IP en la URL de JDBC en su lugar.
- Verifíquelo en base a my.cnf de MySQL DB.
- Inicie la base de datos.
- Verifique si mysqld se inicia sin la opción --skip-networking.
- Reinicie la base de datos y corrija su código para que finalmente cierre las conexiones.
- Desactive el firewall y/o configure el firewall/proxy para permitir/reenviar el puerto.
Fuente:Más detalles