Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1489 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [JDBC] Erreur de connexion MySQL ou de config ?

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[JDBC] Erreur de connexion MySQL ou de config ?

n°790617
fabowl
Posté le 08-07-2004 à 17:12:48  profilanswer
 

Bonjour,
 
J'ai développé un prog Java avec une base MySQL. Voici un bout de code de ma connexion à la base :
 

Code :
  1. private void connect() {
  2.         String host = "127.0.0.1";
  3.         String database = "intraPDA";
  4.         String user = "root";
  5.         String password = "";
  6.         String pilote = "org.gjt.mm.mysql.Driver";
  7.         try {
  8.             Class.forName(pilote).newInstance();
  9.             Properties info = new Properties();
  10.             info.put("user", user);
  11.             info.put("password", password);
  12.             info.put("useUnicode", "true" );
  13.             info.put("characterEncoding", "iso-8859-1" );
  14.             this.conn = DriverManager.getConnection("jdbc:mysql://" + host + "/" +database,info);
  15.         }
  16.         catch(InstantiationException e) {
  17.             new CDialog().afficheErreur(null,"Erreur" );
  18.         }
  19.         catch(IllegalAccessException e) {
  20.             new CDialog().afficheErreur(null,"Erreur" );
  21.         }
  22.         catch(SQLException e) {
  23.             new CDialog().afficheErreur(null,"Erreur de connexion à la base de données " );
  24.             e.printStackTrace();
  25.         }
  26.         catch(ClassNotFoundException e) {
  27.             new CDialog().afficheErreur(null,"Erreur de driver" );
  28.         }
  29.     }


 
Pour mes tests, j'utilisais jusqu'à présent 127.0.0.1 mais maintenant, je dois déployer mon appli et utiliser non pas ma base locale (avec easyphp), mais me connecter à une autre machine. Et là c le drame !  :pt1cable:  
 
Que je mette mon IP 192.168.1.7 ou n'importe quoi d'autre ça ne fonctionne pas. Ca marche juste avec 127.0.0.1 (ou localhost bien sûr)
 
J'en déduis donc que l'erreur ne vient pas de mon code ! Par contre, faut-il modifier quelque chose dans la configuration de MySQL ? Je pense par ex au fichier my.ini


Message édité par fabowl le 08-07-2004 à 17:14:01
mood
Publicité
Posté le 08-07-2004 à 17:12:48  profilanswer
 

n°790724
skeye
Posté le 08-07-2004 à 19:17:33  profilanswer
 

[:mlc]


---------------
Can't buy what I want because it's free -
n°790737
thecoin
Chasseur de chasseur de canard
Posté le 08-07-2004 à 19:28:15  profilanswer
 

Si tu fais un ping sur ton IP distante ca donne quoi?  :D  
 
Oui je sais c'est bête,mais...

n°790845
gm_superst​ar
Appelez-moi Super
Posté le 08-07-2004 à 22:40:23  profilanswer
 

fabowl a écrit :

ça ne fonctionne pas.


Ca serait pas mal de dire ce qui ne fonctionne pas. Quelle est l'erreur renvoyée...
 
Sinon ta base est accessible au moins ? Si tu essayes à partir d'un autre client MySQL ?


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°790876
G0ose
pthread_mutex_lock(&Trolls);
Posté le 08-07-2004 à 23:22:13  profilanswer
 

Tiens moi c'est ce que j'utilise dans un prog, peut etre que ca t'aidera :

Code :
  1. String conString = null;
  2.        
  3.        
  4.         conString = "jdbc:mysql://xxx.xxx.xxx.xxx:3306/MaBase?user=user1&password=123456";
  5.         try{
  6.                Class.forName("com.mysql.jdbc.Driver" );
  7.                 conn= DriverManager.getConnection(conString);
  8.                 stmt = conn.createStatement();
  9.                 rset = stmt.executeQuery("select * from H_Cine_List" );
  10.                while(rset.next())
  11.                {
  12.                     jComboBox1.addItem(rset.getString(3));
  13.                }
  14.                 rset.close();
  15.         }
  16.         catch(SQLException e)
  17.         {
  18.             System.out.println("Erreur : "+e.getMessage());
  19.         }
  20.         catch(ClassNotFoundException c)
  21.         {
  22.             System.out.println("Erreur : "+c.getMessage());
  23.         }


 

n°791056
the real m​oins moins
Posté le 09-07-2004 à 00:43:15  profilanswer
 

bah 100 balles que sont user à pas les droits pour acceder ailleurs que par le loopback..


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°791058
Mara's dad
Yes I can !
Posté le 09-07-2004 à 00:48:10  profilanswer
 

+1


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°791070
the real m​oins moins
Posté le 09-07-2004 à 01:12:17  profilanswer
 

et un grand merci à G0ose [:arcueid brunestud]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°791161
G0ose
pthread_mutex_lock(&Trolls);
Posté le 09-07-2004 à 09:24:40  profilanswer
 

Ouaip, fait un

Code :
  1. select * from user;

si ton utilisateur a comme host: localhost (ou 127.0.0.1 je ne C plus) c'est sur que ca ne marchera pas.
Si c'est ton cas RTFM...
 
[edit] la requete se fait bien sur sur la base mysql  :o


Message édité par G0ose le 09-07-2004 à 09:27:15
n°791215
fabowl
Posté le 09-07-2004 à 09:57:15  profilanswer
 

ça y est, g trouvé !
 
Alors, c'était tout con ! Dans le fichier my.ini, il fallait mettre en commentaire la ligne suivante :
 

Code :
  1. bind-address=127.0.0.1


 
J'ai trouvé la solution sur easyphp.org !
 
Et pour que ça fonctionne, il faut ajouter un utilisateur (donc ne pas se connecter en root)
- en lui donnant tous les privileges sur la base voulue
- le nom du Host, le laisser en chaine vide (pour accepter des requêtes venant de n'importe quelle IP), et voilà !  :)  
 
PS : un grand merci pr vos réponses, c bien sympa d'avoir essayé de m'aider  :D

mood
Publicité
Posté le 09-07-2004 à 09:57:15  profilanswer
 

n°791218
G0ose
pthread_mutex_lock(&Trolls);
Posté le 09-07-2004 à 10:00:34  profilanswer
 

Citation :

le nom du Host, le laisser en chaine vide (pour accepter des requêtes venant de n'importe quelle IP), et voilà !  :)


 
c'est pas '%' pour n'importe quel host ?


Message édité par G0ose le 09-07-2004 à 10:01:26
n°791233
fabowl
Posté le 09-07-2004 à 10:19:17  profilanswer
 

G0ose a écrit :


 
c'est pas '%' pour n'importe quel host ?


 
Ouai, encore un truc bizarre ! Au début, j'ai mis '%' dans phpMyAdmin mais ça ne fonctionnait pas alors j'éai mis '' et là ça marchait :??:  
Parfois, y a des mystères ...

n°791246
the real m​oins moins
Posté le 09-07-2004 à 10:32:12  profilanswer
 

[:totozzz]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [JDBC] Erreur de connexion MySQL ou de config ?

 

Sujets relatifs
[MySQL] Pb de requete [Resolu][MySql] Pb de requete complexe
mysql_fetch_arrayCompatibilité entre Mysql et une application PalmOS
trouver l'erreurASP.net connexion en ODBC
[HTTP] Url trop longue ? Quelle erreur normalement ? ACCESS - MYSQL
A partir de combien d'enregistrements virer MySQL ?Logiciel acces base mysql
Plus de sujets relatifs à : [JDBC] Erreur de connexion MySQL ou de config ?


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR