2011-03-05 41 views
19

¿Cuál es el problema? No se puede conectar a la base de datos?No se puede crear PoolableConnectionFactory

org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (
      Communications link failure 
    The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.) 
+4

Por favor, publique ** stacktrace ** en su lugar. No podemos entender cuál es la causa ** raíz ** de este error sin stacktrace. –

+0

En Linux, tuve que iniciar el servicio escribiendo "service mysqld start" – MacGyver

Respuesta

19

Este es el real causa del problema:

Causado por: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Comunicaciones fallo de enlace

Usted tiene un problema de enlace de comunicación con la base de datos. Asegúrese de que su aplicación tenga acceso de red a su base de datos (y el firewall no está bloqueando los puertos a su base de datos).

+3

Para la posteridad, me encuentro con este problema cada mes más o menos cuando reinicio una máquina en el entorno de desarrollo y mi base de datos no se está ejecutando. Espero que esto ayude a alguien más cuando cometan el mismo error tonto. – user2217751

0

Esto ocurre porque el cortafuegos bloquea la conexión de la base de datos.

Desactive el firewall y luego intente ejecutar el programa nuevamente. Funcionó para mí ...: D

3

Esto es un problema de red. Verifique la conectividad de su base de datos. O su enlace de conexión a la base de datos, nombre de usuario y contraseña son incorrectos o su servidor de base de datos está detenido.

3

Tuve el mismo problema con localhost en la URL de origen. Lo resolví con 127.0.0.1 en lugar de localhost.

2

Me encuentro con el mismo problema cuando configuro el servidor tomcat y mysql en VirtualBox VM usando chef.

en este caso, creo que es cierto problema VirtualBox parece asignar direcciones que no es localhost a eth0 como

[[email protected] webapps]$ /sbin/ifconfig 
eth0  Link encap:Ethernet HWaddr 08:00:27:60:FC:47 
     inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0 

continuación capacidad de autodetección de la receta del chef usando 10.0.2.15 como la dirección de enlace del servidor MySQL.

por lo que especifique la dirección de enlace para los parámetros del nodo de la receta del chef resolver el problema en mi caso. Espero que esta información ayude a las personas que utilizan chef con vagabundo.

{ 
    "name" : "db", 
    "default_attributes" : { 
    "mysql" : { 
    "bind_address" : "localhost" 
    ... 
    } 
3

Aquí fue causado por el antivirus avast. Puede desactivar el firewall de avast y dejar solo el firewall de Windows activo.

-1

Si utiliza Apache Tomcat versión 8.0, en lugar de ello, utilice localhost Tomcat 7.0 que habían tratado a 127.0.0.1 y apagar cortafuegos pero no funciona, pero el uso de Tomcat 7.0 y que ahora trabaja

-1

tuve una error similar Cambiar la URL JDBC para usar 127.0.0.1 en lugar de localhost ayudado.

También había intentado cambiar las entradas en el archivo catalina.policy, pero eso no ayudó. La entrada que cambié fue para - java.net.SocketPermission

Cuestiones relacionadas