# Datenbank Verbindung geht nicht



## iL0ndi (4. Mrz 2014)

Hallo Zusammen,
Ich habe ein kleines Programm, welches aus einer Datenbank, Datensätze ausliest. Will ich Verbinden kommt ein Timeout error!
Ich verwende dieselbe Datenbank wie meine Webseite. Die MySQL Adresse, die ich von meinem Webhoster habe funktioniert bei meiner Webseite (CMS) wunderbar, nur mein Java Programm packt es nicht! Um Fehler auszuschließen, habe ich mit Xampp und mit einem gratis DB hoster die Sache getestet... Da gehts!


```
private static Connection con = null;
private static String dbHost = "adresse"; // Hostname
private static String dbPort = "3306";      // Port -- Standard: 3306
private static String dbName = "db";   // Datenbankname
private static String dbUser = "user";     // Datenbankuser
private static String dbPass = "pw";      // Datenbankpasswort
private static String info = "";
private MySQLConnection(){
    try {
        Class.forName("com.mysql.jdbc.Driver"); // Datenbanktreiber für JDBC Schnittstellen laden.
 
        // Verbindung zur JDBC-Datenbank herstellen.
        con = DriverManager.getConnection("jdbc:mysql://"+dbHost+":"+ dbPort+"/"+dbName+"?"+"user="+dbUser+"&"+"password="+dbPass);
    } catch (ClassNotFoundException e) {
        System.out.println("Treiber nicht gefunden");
    } catch (SQLException e) {
        System.out.println("Verbindung nicht moglich");
        System.out.println("SQLException: " + e.getMessage());
        System.out.println("SQLState: " + e.getSQLState());
        System.out.println("VendorError: " + e.getErrorCode());
    }
  }
```


----------



## JavaMeister (4. Mrz 2014)

Remote Zugriffe auf dbm sind meist verhindert.


----------



## Sen-Mithrarin (6. Mrz 2014)

erstens : in einen catch-block gehört IMMER ein Throwable.printStackTrace() ! ohne ausnahme !
zweitens : es ist normal das viele hoster ihre datenbank nicht nach außen hin freigeben
viele nutzen interne unix-sockets ... ergo : man kann nicht mal an TCP/3306 connecten da dieser port nach außen hin garnicht läuft oder von einer firewall blockiert wird
das du vom host selbst auf die datenbank zugreifen kannst ist klar da dort die entsprechende server-engine eine pipe aufbaut ...

wenn also vom hoster externer zugriff nicht gestattet ist dann gehts nicht .. egal wie du es versuchst


----------

