Messages
du sujet
Probleme de connexion avec JDBC Driver |
ulrich
Ville : Trondheim
Membre depuis : 25 nov. 2004
Messages : 6
|
28 déc. 2004 à 09:41
Bonjour á tous,
J'ai vraiment besoin d'aide. un problème sur l'installation du driver:
En testant la classe TestConnexionJDBC(page 220) j'obtient: Classe introuvable "com.mysql.jdbc.Driver". provenant de: Class.forName ("com.mysql.jdbc.Driver");
Toute la classe TestConnexionJDBC fonctionne bien en compilation, et je n'utilise pas le package.
- j'ai placé le fichier "mysql-connector-java-3.1.5-gamma-bin.jar" dans j2sdk1.4.1_01/lib.
- dans la variable d'environnement j'ai introduit ceci:
;C:\Programfiler\MySQL\MySQL Server 4.1\bin\mysqld.exe
(Je n'ai pas eu la possibilité de l'installer dans le C:\MySQL lors de l'installation)
- la classe source com.mysql.jdbc.Driver se trouve dans le catalogue nommé
"mysql-connector-java-3.1.5-gamma".
- mes classes sont dans C:\j2sdk1.4.1_01\src\forum
J'utilise:
1: Windows XP Home Edition,
2: mysql-4.1.8-win.zip,
3: mysql-connector-java-3.1.5-gamma.zip
4: j2sdk1.4.1_01
Merci beaucoup pour l'aide :)
[Note du modérateur : message original retranscrit. Evitez SVP de changer en profondeur les messages de ce sujet à chaque fois que votre situation évolue, sinon les autres internautes ne vont plus rien comprendre à l'enchaînement des messages !!!] --- Salutations :)
|
Manu
Ville : Paris / France
Membre depuis : 29 avr. 2003
Messages : 394
|
30 déc. 2004 à 14:13
> - j'ai placé le fichier "mysql-connector-java-3.1.5-gamma-bin.jar" dans j2sdk1.4.1_01/lib.
C'est dans le dossier j2sdk1.4.1_01/jre/lib/ext qu'il faut placer le fichier du driver si vous ne voulez pas le citer avec l'option -classpath (voir l'astuce page 222)
Bonne lecture et meilleurs voeux pour l'année 2005 --- Manu (moderator/modérateur)
|
ulrich
Ville : Trondheim
Membre depuis : 25 nov. 2004
Messages : 6
|
1 janv. 2005 à 23:38
Bonjour et Bonne année :-)
Apres des series d'essaie, je ne parviens toujours pas á réussir la connection.
J'utilise directement les exemples du livre.
j'ai installé mysql dans: C:\mysql
Pour le connecteur, il se trouve dans:
C:\j2sdk1.4.1_01\jre\lib\ext\mysql-connector-java-3.0.14-production-bin.jar
Dans la variable d'environement:
variable: CLASSPATH
sa valeur: .;C:\j2sdk1.4.1_01\jre\lib\ext\mysql-connector-java-3.0.14-production-bin.jar
Pour Java:
variable: PATH
valeur: %PATH%;C:\j2sdk1.4.1_01\bin
variable: JAVA_HOME
valeur: C:\j2sdk1.4.1_01
Pour le test, j'utilise la classe: TestConnexionJDBC (inchangée).
jusque lá j'obtiens: Connection impossible: Unable to connect to any hosts due to exception:java.net.ConnectException:Connection refused:connect
Devrais-je modifier la valeur entre parenthese ci-dessous?
connexion = DriverManager.getConnection ("jdbc:mysql:///test");
j'ai essayé avec: ("jdbc:mysql://localhost:3306/test"); mais rien ne marche.
Je note que le fichier mysqld.exe se ferme automatiquement apres demarage!
Oú se trouverais l'erreur?
Ma machine utilise Windows XP Home Edition.
merci beaucoup
--- Salutations :)
|
Manu
Ville : Paris / France
Membre depuis : 29 avr. 2003
Messages : 394
|
2 janv. 2005 à 07:51
> Apres des series d'essaie, je ne parviens toujours pas á réussir la connection.
Vous avez déjà réussi à avancer puisque vous n'avez plus l'erreur sur la classe de driver non trouvée :-)
> Pour le connecteur, il se trouve dans:
>
> C:\j2sdk1.4.1_01\jre\lib\ext\mysql-connector-java-3.0.14-production-bin.jar
>
> Dans la variable d'environement:
>
> variable: CLASSPATH
> sa valeur: .;C:\j2sdk1.4.1_01\jre\lib\ext\mysql-connector-java-3.0.14-production-bin.jar
Un petit détail en passant : toutes les bibliothèques copiées dans le dossier C:\j2sdk1.4.1_01\jre\lib\ext sont automatiquement ajoutée au classpath au lancement de la commande java. Comme la variable CLASSPATH est égale par défaut au dossier courant ".", vous pourriez vous passer de cette variable et la supprimer...
> Pour Java:
>
> variable: PATH
> valeur: %PATH%;C:\j2sdk1.4.1_01\bin
Au passage, une autre astuce qui vous servira peut-être un jour : il arrive quelquefois qu'on développe sur une machine où plusieurs JVM de versions différentes sont installées ; l'ordre des dossiers cités dans le PATH peut finalement provoquer un appel à une version de Java à laquelle vous n'avez pas pensé. Pour vérifier la version utilisée, pensez alors à taper la commande :
java -version
> jusque lá j'obtiens: Connection impossible: Unable to connect to any hosts due to exception:java.net.ConnectException:Connection refused:connect
>
> Devrais-je modifier la valeur entre parenthese ci-dessous?
> connexion = DriverManager.getConnection ("jdbc:mysql:///test");
Ne changez rien pour l'instant dans votre programme, car je pense que si ça ne marche pas c'est plutôt parce que MySQL n'est pas démarré.
Quand vous démarrez MySQL et mysqld, êtes-vous bien sous un compte Windows XP qui a les droits d'administrateur ?
Avez-vous essayé la commande C:\mysql\bin\mysql.exe pour voir si MySQL est bien lancé (voir l'aparté "Tester MySQL" page 221) ?
Pensez aussi à vous référencer aux docs MySQL disponibles à http://dev.mysql.com/doc/mysql/fr/ (en français).
Courage vous y êtes presque ;-) --- Manu (moderator/modérateur)
|
ulrich
Ville : Trondheim
Membre depuis : 25 nov. 2004
Messages : 6
|
2 janv. 2005 à 16:38
J'ai essayé la commande C:\mysql\bin\mysqld.exe
il na marche pas du tout:
ERROR 2003: can't connect to MySQL server on 'localhost' (10061).
cependant la commande C:\mysql\bin\mysqld --install marche bien.
Je n'arrive pas á demarrer le fichier winmysqladmin.exe et je ne retrouve pas le fichier "my.ini" dans mon catalog Windows.
y aurait t-il une liaison? comment proceder enfin? --- Salutations :)
|
Manu
Ville : Paris / France
Membre depuis : 29 avr. 2003
Messages : 394
|
2 janv. 2005 à 18:37
> J'ai essayé la commande C:\mysql\bin\mysqld.exe
> il na marche pas du tout:
> ERROR 2003: can't connect to MySQL server on 'localhost' (10061).
J'image que vous voulez dire C:\mysql\bin\mysql.exe (sans le d)...
> cependant la commande C:\mysql\bin\mysqld --install marche bien.
Vous avez bien redémarré la machine après ?
> Je n'arrive pas á demarrer le fichier winmysqladmin.exe et je ne retrouve pas le fichier "my.ini" dans mon catalog Windows.
J'ai souvenir que la commande winmysqladmin.exe demande une DLL qui se trouve dans le dossier C:\mysql\lib\opt. Comme ce dossier n'est ni celui où se trouve winmysqladmin.exe, ni dans le PATH, il faut faire une des deux bidouilles suivantes :
- Soit dans une fenêtre de commandes, il faut se déplacer dans le dossier C:\mysql\lib\opt et lancer winmysqladmin.exe en spécifiant son chemin complet :
C:\mysql\lib\opt>C:\mysql\bin\ winmysqladmin.exe
- Soit ajouter le dossier C:\mysql\lib\opt au PATH et lancer winmysqladmin.exe en double cliquant sur son fichier. --- Manu (moderator/modérateur)
|
ulrich
Ville : Trondheim
Membre depuis : 25 nov. 2004
Messages : 6
|
2 janv. 2005 à 21:45
Bonjour Manu,
J'ai enfin réussi la connexion!!!
Le probleme était aussi de redemarer la machine.
Merci beaucoup pour le bon soutient :) --- Salutations :)
|
Manu
Ville : Paris / France
Membre depuis : 29 avr. 2003
Messages : 394
|
2 janv. 2005 à 22:15
Ravi que vous ayez pu y arriver :-)
Au passage, s'il vous reste un peu de temps, j'aimerai bien connaître votre opinion sur ce Cahier du Programmeur... --- Manu (moderator/modérateur)
|
jimmy69
Ville : bouillon
Membre depuis : 9 sept. 2005
Messages : 1
|
9 sept. 2005 à 18:44
Bonjour a vous deux ,
j'ai un souci aussi au niveau de la connection a mysql page 170 !
Je suis su win xp
J'ai bien sur mysql d'installer et qui fonctionne
j'ai place le connecteur
mysql-connector-java-3.0.6-stable-bin.jar
dans le dossier
C:\j2sdk1.4.2_08\jre\lib\ext
mais qd je lance l'application via jbuilder foundation il me fait le catch
classe introvable : com.mysql.jdbc.Driver !
Avez vous une idée !!!!
Je vous remercie
Christophe
|
Manu
Ville : Paris / France
Membre depuis : 29 avr. 2003
Messages : 394
|
9 sept. 2005 à 23:21
Bonjour Christophe,
> j'ai place le connecteur
> mysql-connector-java-3.0.6-stable-bin.jar
> dans le dossier
> C:\j2sdk1.4.2_08\jre\lib\ext
>
> mais qd je lance l'application via jbuilder foundation il me fait le catch
> classe introvable : com.mysql.jdbc.Driver !
JBuilder Foundation s'installe avec sa propre version du Java 2 SDK qui vient donc en double du SDK que vous avez installé dans C:\j2sdk1.4.2_08. Je pense qu'il faut en fait que vous copiez mysql-connector-java-3.0.6-stable-bin.jar dans le dossier jre\lib\ext que vous trouverez dans les sous-dossiers de JBuilder. --- Manu (moderator/modérateur)
|
a1984
Ville : salambo
Membre depuis : 3 avr. 2006
Messages : 3
|
3 avr. 2006 à 12:27
bonjour à tous,
j'ai vraiment besoin de vos aide, j'éssaye depuis quelque jour de connecter à une base de données MySQL via une application java mais je n'ai pas réussi
svp aidez moi;
le message d'eureur :
"
Message :
Communication failure during handshake. Is there a server running on localhost:3306?
Probleme SQL : null
Code de l'erreur : 0"
le code utilisé:
public class connexion{
connexion(){
try {
// chargement du pilote
Class.forName("org.gjt.mm.mysql.Driver");//
}catch(ClassNotFoundException e){
System.err.println("Pilote MySQL non trouve :"+e.getMessage());
}
try {//
// Etablissement de la connexion
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/dvdtheque","root","ams123");
// Exécution d'une requête
Statement requete = con.createStatement();
ResultSet resultat = requete.executeQuery("Select * From film_tbl");
// Affichage du résultat
while(resultat.next()) {
System.out.println(
resultat.getString("Num_Film_PK") +
"-" +
resultat.getString("Nom_Film"));
}
// Fermeture des descriptions
resultat.close();
requete.close();
con.close();
}catch (SQLException e) {
System.err.println("-----> Exceptions souleve <-----");
while(e!=null){
System.out.println("Message : " + e.getMessage());
System.out.println("");
System.out.println("Probleme SQL : " + e.getSQLState());
System.out.println("");
System.out.println("Code de l'erreur : " + e.getErrorCode());
e = e.getNextException();
System.out.println("");
}
}
}
|
Manu
Ville : Paris / France
Membre depuis : 29 avr. 2003
Messages : 394
|
3 avr. 2006 à 12:56
Votre serveur MySQL ne semble pas en marche.
Comment l'avez-vous lancé ?
Quelle version de MySQL utilisez-vous ?
Est-ce que le programme client mysql.exe situé dans le dossier bin du répertoire d'installation de MySQL fonctionne avec la commande "mysql.exe -u root -p dvdtheque" ? --- Manu (moderator/modérateur)
|
a1984
Ville : salambo
Membre depuis : 3 avr. 2006
Messages : 3
|
4 avr. 2006 à 11:45
je utilise la version 4.1 de mysql,
mysql marche et il se lance automatiquement dés le démarrage
le programme client mysql.exe est bien situé dans le
dossier bin, et j'ai tester la commande "mysql.exe -u root -p dvdtheque"
et elle a marché.
j'ai testé la connexion à mysql avec "telnet 127.0.0.1 3306"
mais la connexion est échoué
Avez vous une idée !!!!
Je vous remercie d'avance
|
Manu
Ville : Paris / France
Membre depuis : 29 avr. 2003
Messages : 394
|
4 avr. 2006 à 11:53
Le serveur MySQL est probablement en marche sur un autre port...
Pour trouver le numéro de port, ouvrez le fichier my.ini qui devrait se situer dans le dossier C:\windows et regardez le numéro qui se situe sur la ligne qui débute par "port=" --- Manu (moderator/modérateur)
|
a1984
Ville : salambo
Membre depuis : 3 avr. 2006
Messages : 3
|
4 avr. 2006 à 13:44
> Le serveur MySQL est probablement en marche sur un autre port...
> Pour trouver le numéro de port, ouvrez le fichier my.ini qui devrait se situer dans le dossier C:\windows et regardez le numéro qui se situe sur la ligne qui débute par "port="
Bonjour Manu,
merci beaucoup pour votre aide
J'ai enfin réussi la connexion!!!
|