Connexion distante

rimkazz Messages postés 25 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 30 mai 2006 - 16 mars 2006 à 12:46
rimkazz Messages postés 25 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 30 mai 2006 - 18 mars 2006 à 17:13
Bonjour
J'ai un problème de driver...je crois
Quand je lance mon prog avec
DriverManager.getConnection("jdbc:mysql://localhost/orevad'user=root&password=root");

tout marche bien mais quand je lance mon prog avec
DriverManager.getConnection("jdbc:mysql://ip extérieur);
il y a un problème et ca me retourne exception probleme chargement driver

Faut que le serveur distant soit equipé des driver mysql??? c'est pas ceux de mon poste qui comptent???


try {
System.out.println("Connection au driver JDBC");
Class.forName("com.mysql.jdbc.Driver").newInstance();
System.out.println("Driver com.mysql.jdbc.Driver chargé");
try {
System.out.println("Connection a la base de données");
Connection conn =
DriverManager.getConnection("jdbc:mysql://localhost/orevad'user=root&password=root");

....


}
// System.out.println(x);
// }
} catch (SQLException ex) {
// la connection a la base de données n'a pas pu etre établi
// 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("Echec de chargement du driver");
}

10 réponses

kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
16 mars 2006 à 16:03
Salut,

seul la machine sur laquelle s'exécute ce code doit avoir les driver mysql.
Quand tu changes l'ip, est tu sûr que c'est un problème de driver et non un problème réseau (machine non trouvée, mauvaise ip ...) ? quel est le message de l'exception ?
0
rimkazz Messages postés 25 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 30 mai 2006
16 mars 2006 à 17:38
Echec de chargement du driver

c ca le messaage lol je crois que jai pas trop compris ce que tu me demande mais en tout cas une fois que ca ma fai cette erreur meme ken je réécris ladresse localhost pour lancé le script sur mon seerveur ca marche plus alors ko debut ca marchait
0
kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
17 mars 2006 à 09:29
Ca c'est le message que tu affiches (dans System.out.println("Echec de chargement du driver")), je souhaite avoir le vrai message de l'exception (ex.getMessage())
0
rimkazz Messages postés 25 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 30 mai 2006
17 mars 2006 à 10:22
SQLException: 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.(MysqlIO.java:284)
at com.mysql.jdbc.Connection.createNewIO(Connection.java:2555)
at com.mysql.jdbc.Connection.(Connection.java:1485)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at Tri.(Tri.java:189)
at Insert$2.actionPerformed(Insert.java:109)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)


** END NESTED EXCEPTION **



Last packet sent to the server was 0 ms ago.
SQLState: 08S01
VendorError: 0
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
rimkazz Messages postés 25 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 30 mai 2006
17 mars 2006 à 10:28
si je fais un envoi de requete d'insertion avec une page php ca marche ca inser dans la base de donnée mais pas en java???
Es ce que le prog java vise un autre socket qui est bloqué???
0
kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
17 mars 2006 à 11:44
Donc, ce n'est pas un pb de driver :)

Vérifie si le port 3306 est bloqué sur le serveur auquel tu accèdes (firewall, proxy ...)
Si ta page php est sur le serveur, c'est normal que ça marche, là ton client est sur une autre machine. Essaye depuis ta machine de faire : telnet ip_serveur 3306. Si tu as une erreur, le port de mysql est bloqué.
0
rimkazz Messages postés 25 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 30 mai 2006
17 mars 2006 à 12:37
oui jai une erreur
perte de connexion
mais avec la page php ca marche et elle est sur mon pc pas sur le serveur distant...comment je peux passer par le meme port
0
rimkazz Messages postés 25 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 30 mai 2006
17 mars 2006 à 21:58
oui jai une erreur
perte de connexion
mais avec la page php ca marche et elle est sur mon pc pas sur le serveur distant...comment je peux passer par le meme port
0
cs_gattous Messages postés 100 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 7 octobre 2007
18 mars 2006 à 09:06
Le problème est que pour mysql, on ne peut faire des connexions
distantes que si on a configuré mysql pour les accepter. D'ailleurs, on
configure en donnant une permission à un autre poste du réseau
local avec la commande grant. Pour mieux expliquer, voici ce que tu
dois faire : lance le client mysql (ligne de commande) sur le serveur,
puis tape la commande suivante "GRANT ALL PRIVILEGES ON nombase.* TO nom_user@identifiantposte IDENTIFIED BY pwd
WITH GRANT OPTION".... je suis pas sûr du syntaxe (tu peux tjrs
vérifier avec les docs de mysql), mais je suis sûr que c'est la
commande et la solution à ton pbm... avec :

nom_user : le nom du nouvel utilisateur

identifiantposte : le nom du poste ,ds le réseau ,à partir duquel la cxion est permise ou l'@ip

pwd : le mot de passe.

mais ça ne permet la connexion distante qu'à partir d'un poste bien connu et avec un nom utilisateur et un mot de passe....

J'espère que je me suis fait comprendre... Allez à bientot
0
rimkazz Messages postés 25 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 30 mai 2006
18 mars 2006 à 17:13
moi mon poste est chez moi et le serveur est dans mon entreprise c pas du local...
0
Rejoignez-nous