IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Outils MySQL Discussion :

connexion à mysql avec java: java.net.ConnectException: Connection refused


Sujet :

Outils MySQL

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 49
    Points : 39
    Points
    39
    Par défaut connexion à mysql avec java: java.net.ConnectException: Connection refused
    Bonjour ,

    Je teste une connexion à une bdd mysql via java avec le programme ci-dessous:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    try 
    {
       System.out.println("Connexion au driver JDBC");
       Class.forName("com.mysql.jdbc.Driver").newInstance();
       System.out.println("Driver com.mysql.jdbc.Driver chargé");
       try 
       {
    	System.out.println("Connexion a la base de données");
     
    	Connection con = DriverManager.getConnection("jdbc:mysql://localhost :3306/information_schema","root","");
    	System.out.println("Base de données connectée");
    	} 
    	catch (SQLException ex) 
    	{
    	   // la connexion a la base de données n_a pas pu être établie
    	   // voici les codes erreurs retournés
    	   System.out.println("SQLException: " + ex.getMessage());
    	   System.out.println("SQLState: " + ex.getSQLState());
    	   System.out.println("VendorError: " + ex.getErrorCode());
    	}
    } 
    catch (Exception ex) 
    {
       // Le driver n_a pas pu être chargé
       // vérifier que la variable CLASSPATH est bien renseignée
       System.out.println(ex.toString());
    }
    J'obtiens les messages d'erreurs suivants et je n'arrive donc pas à comprendre pourquoi la connexion échoue:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    Connection au driver JDBC
    Driver com.mysql.jdbc.Driver chargé
    Connection a la base de données
    SQLException: Communications link failure due to underlying exception: 
     
    ** BEGIN NESTED EXCEPTION ** 
     
    java.net.ConnectException
    MESSAGE: Connection refused
     
    STACKTRACE:
     
    java.net.ConnectException: Connection refused
    	at java.net.PlainSocketImpl.socketConnect(Native Method)
    	at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
    	at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
    	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
    	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
    	at java.net.Socket.connect(Socket.java:519)
    	at java.net.Socket.connect(Socket.java:469)
    	at java.net.Socket.<init>(Socket.java:366)
    	at java.net.Socket.<init>(Socket.java:208)
    	at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:173)
    	at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:268)
    	at com.mysql.jdbc.Connection.createNewIO(Connection.java:2745)
    	at com.mysql.jdbc.Connection.<init>(Connection.java:1553)
    	at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285)
    	at java.sql.DriverManager.getConnection(DriverManager.java:582)
    	at java.sql.DriverManager.getConnection(DriverManager.java:185)
    	at extraction.participants.Participants.main(Participants.java:23)
     
     
    ** END NESTED EXCEPTION **
     
     
     
    Last packet sent to the server was 33 ms ago.
    SQLState: 08S01
    VendorError: 0
    Avec phpMyAdmin, l'accès à toutes bdd mysql se fait sans problème pour root sans mot de passe ou pour un utilisateur particulier.

    Voici ma configuration:

    - Mandriva Linux Spring 2007
    - Version du client MySQL: 5.0.37
    - mysql-connector-java-5.0.6-bin.jar
    - java version "1.6.0_01"

    Merci d'avance pour toutes vos suggestions car je suis complètement aux abois après des heures et des heures de recherches infructueuses.

  2. #2
    Membre actif Avatar de Roy Miro
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    273
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 273
    Points : 290
    Points
    290
    Par défaut
    Je n'ai pas encore regardé ton code en détail, mais j'ai déjà rencontré la meme erreur. Il s'agissait du firewalll qui bloquait.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 49
    Points : 39
    Points
    39
    Par défaut Résolu je ne sais par quelle magie.
    Merci pour ton intervention mais mon problème est résolu.

    En fait, j'ai essayé ceci:

    dans le fichier my.cnf, j'ai mis en commentaire la ligne suivante:

    skip-networking

    qui est donc devenue :

    # skip-networking

    Après cette opération il faut redémarrer le serveur mysql (sous root):

    soit

    shell> service mysqld stop
    shell> service mysqld start


    ou

    shell>/etc/init.d/mysqld stop
    shell>/etc/init.d/mysqld start


    Par ailleurs, dans un autre forum, la solution suivante a été proposée:

    Donc tu peux essayer 2 choses :

    ajouter "bind-address 127.0.0.1" dans /etc/hosts.allow

    et/ou

    commenter l'option "skip-networking" dans /etc/mysql/my.cnf
    Je ne sais pas ce qui s'est passé mais le redémarrage de mysql n'a pas suffi, j'ai dû redémarrer le système pour que les changements prennent effet.

    Mais d'après ce que j'ai lu ici et là, ce problème peut avoir plusieurs origines dont le firewall justement, mais il me semble qu'étant sous linux, ça ne pouvait pas être le cas pour moi...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. java.net.ConnectException : Connection refused: connect
    Par KRis dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 27/07/2011, 16h31
  2. erreur out java.net.ConnectException: Connection refused: connect
    Par saadtv4004 dans le forum Services Web
    Réponses: 3
    Dernier message: 08/03/2011, 16h30
  3. Réponses: 4
    Dernier message: 14/12/2010, 15h43
  4. Réponses: 2
    Dernier message: 26/02/2008, 15h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo