wake-up-neo.com

PoolableConnectionFactory kann nicht erstellt werden

Worin besteht das Problem? Kann keine Verbindung zur Datenbank herstellen? 

   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.)
19
ujava

Dies ist die tatsächliche Ursache des Problems:

Verursacht durch: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Kommunikationsverbindungsfehler

Sie haben ein Problem mit der Datenbankkommunikationsverbindung. Stellen Sie sicher, dass Ihre Anwendung über Netzwerkzugriff auf Ihre Datenbank verfügt (und die Firewall keine Ports für Ihre Datenbank blockiert).

19
Buhake Sindi

Dies ist ein Netzwerkproblem. Überprüfen Sie Ihre Datenbankverbindung. Entweder ist Ihre Datenbankverbindungsverbindung, Benutzername und Kennwort falsch oder Ihr Datenbankserver wurde angehalten.

4
Raje

Ich hatte das gleiche Problem mit localhost in der Quell-URL .__ Ich löste mich mit 127.0.0.1 anstelle von localhost.

4
Shinigami

Hier wurde es von Avast Antivirus verursacht. Sie können die avast-Firewall deaktivieren und nur die Windows-Firewall aktivieren.

3
Mateus Viccari

Ich stelle dasselbe Problem fest, wenn ich Tomcat und den Mysql-Server unter Verwendung von Chef auf VirtualBox VM einrichte. 

in diesem Fall denke ich, das wahre Problem ist, dass VirtualBox eth0 gerne eine nicht-localhost-Adresse zuweist

[[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

dann die automatische Erkennungsfunktion des Kochrezepts unter Verwendung von 10.0.2.15 als MySQL-Server-Bindeadresse.

geben Sie daher die Bindeadresse für Knotenparameter des Kochrezepts an, um das Problem in meinem Fall zu lösen. Ich hoffe, diese Informationen helfen Menschen, die einen Küchenchef mit Landstreicher verwenden.

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

Dies geschieht, weil die Firewall die Datenbankverbindung blockiert.

Deaktivieren Sie die Firewall und starten Sie das Programm erneut. Es hat für mich funktioniert ...: D

1
Rakesh Patil

Das Problem könnte daran liegen, dass zu viele Benutzer gleichzeitig auf die Datenbank zugreifen. Erhöhen Sie entweder die Anzahl der Benutzer, die gleichzeitig auf die Datenbank zugreifen können, oder entfernen Sie vorhandene Benutzer (oder Apps). Verwenden Sie "Show processlist;" in der Host-DB, um verbundene Benutzer zu überprüfen;

Ich bin auf einen anderen Grund gestoßen, nämlich die Datei "catalina.policy", die den Zugriff auf bestimmte IP/PORT-Adressen verhindern könnte

0
Adel

Gehen Sie zu my.ini-Datei unter dem folgenden Pfad in Windows C:\ProgramData\MySQL\MySQL Server 8.0\my.ini

und kommentieren Sie die untere Zeile

#bind-address=127.0.0.1

Starten Sie anschließend den MySQL-Server neu und stellen Sie eine Verbindung her.

Dann können Sie sich von anderen IP-Adressen/Rechnern aus mit MySQL verbinden.

0
nagadu

Ich habe die Treiberversion in pom.xml geändert und mir geholfen

<dependency>
    <groupId>org.postgresql</groupId>
    <artifactId>postgresql</artifactId>
    <version>42.2.2</version>
</dependency>

In meinem Fall bestand die Lösung darin, das Attribut zu entfernen

validationQuery="select 1"

vom Ressourcen-Tag (Derby DB).

0
RobE

Dieses spezielle Problem kann auch in localhost auftreten. Wir können nicht ausschließen, dass dies ein Problem mit dem Netzwerk oder der Internetverbindung ist. Dieses Problem wird auftreten, obwohl alle Datenbankverbindungseigenschaften korrekt sind.

Ich habe das gleiche Problem konfrontiert, wenn ich den Hostnamen verwendet habe. Verwenden Sie stattdessen die IP-Adresse. Es wird gelöst.

0
Sumanth Varada