# Connection refused: connect Bei Verbindungsherstellung zu MySQL Datenbank



## Furio123 (24. Mai 2010)

Ich versuche einfach nur eine Verbindung zu einer MySQL Datenbank über Java herzustellen, was auch vor einer Weile (ca. 1 Monat) noch funktioniert hat. Betriebssystem ist Windows XP aber ich habe in der Zwischenzeit auch Ubuntu installiert, falls das irgendwelche Systemeinstellungen ändert. Ich verwende den mysql-connector-java-3.1.12-bin.jar und Netbeans 6.8. 
Über die Suchfunktion und Google gibt es viele Lösungsmöglichkeiten für den Fehler und dabei bin ich auch darauf gestoßen, über telnet einen port check zu machen und wenn ich in die Kommandozeile telnet 127.0.0.1 3306 eingebe kriege ich die Meldung "Verbindung konnte nicht hergestellt werden"! Firewall habe ich keine an und über Xampp(phpMyAdmin) und die Kommandozeile kann ich auf die Datenbank zugreifen aber in Java erhalte ich den folgenden Fehler:


```
DB-Verbindung Fehler: com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception: 

** BEGIN NESTED EXCEPTION ** 

java.net.SocketException
MESSAGE: java.net.ConnectException: Connection refused: connect

STACKTRACE:

java.net.SocketException: java.net.ConnectException: Connection refused: connect
        at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:156)
        at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:284)
        at com.mysql.jdbc.Connection.createNewIO(Connection.java:2555)
        at com.mysql.jdbc.Connection.<init>(Connection.java:1485)
        at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
        at java.sql.DriverManager.getConnection(DriverManager.java:582)
        at java.sql.DriverManager.getConnection(DriverManager.java:185)
        at Main.main(Window.java:79)


** END NESTED EXCEPTION **



Last packet sent to the server was 31 ms ago.
```

Im Grunde halte ich mich fast genau an die Anleitung, die im FAQ zu finden ist:


```
try
      { Class.forName("com.mysql.jdbc.Driver");
         System.out.println("Treiber erfolgreich geladen...");
      }
      catch(ClassNotFoundException e)
      {
         System.out.println("Fehler beim Laden des Treibers"+e);
         String pw = eingabe.next();
         System.exit(0);
      }

      try  {
        System.out.println("Passwort fuer root");
        String pw = eingabe.next();
        System.out.println("Datenbank wählen");
        String db = eingabe.next();
        dbVerbindung =
           DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/"+db, "root", "pw");
           System.out.println("Verbindung erfolgreich...");
      }
      catch(SQLException e)
      {
         System.out.println("DB-Verbindung Fehler: "+e);
         String pw = eingabe.next();
         System.exit(0);
      }
```

Wie gesagt hat das ganze vor ca. 1 Monat noch funktioniert... kann es sein, dass die Installation von Ubuntu das ganze irgendwie blockt? Achja und über netstat -a kriege ich protocol: tcp, lokale Adresse:tim-laptop:3306, status: Abhören


----------



## Furio (24. Mai 2010)

ähm das "pw" ohne anführungszeichen...da hatte ich zum testen das passwort vorher direkt reingeschrieben


----------



## XHelp (25. Mai 2010)

Furio123 hat gesagt.:


> ...wenn ich in die Kommandozeile telnet 127.0.0.1 3306 eingebe kriege ich die Meldung "Verbindung konnte nicht hergestellt werden"!...


und


Furio123 hat gesagt.:


> ...und über Xampp(phpMyAdmin) und die Kommandozeile kann ich auf die Datenbank zugreifen...



für mich schließen sich die Aussagen aus... was machst du denn über die Kommandozeile, wenn es klappt?
Also irgendein Betriebsystem, was im Moment nicht an ist, sondern einfach nur auf irgendeiner Partition ist, hat bestimmt nichts mit dem Problem zu tun.
Schau ggf nach, welche Einstellungen in phpMyAdmin eingetragen sind, dann bist du schlauer.


----------



## KSG9|sebastian (28. Mai 2010)

was sagt denn das mysql-Kommandozeilen-Tool?


mysql/bin> mysql -u root -p 

?


----------

