PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Problème avec MySQL (easyphp1-7)
Problème avec MySQL (easyphp1-7)
Débuté par guest-stef, 02 fév. 2006 16:15 - 7 réponses
Posté le 02 février 2006 - 16:15
Je dois réaliser pour un client, une gestion de BDD qui fonctionne sous MySQL.
(EasyPhp1-7)

Il a développé un pti site en php qui fonctionne très bien sur tout notre réseau.

Lorsque je veux accéder à cette BDD avec Windev, il me renvoie tjrs la même erreur :/.
Code erreur : 00000

Voici mon code :

Num_connexion est un entier

Libellé1 = "Tentative de connexion à la base de données utilisateur ..."
Num_connexion = SQLConnecte("192.168.0.1","root","","barcode","MySQL")

SI Num_connexion<>0 ALORS
// La connexion s'est bien passée
Libellé1 = "Copie de la base de données Utilisateurs."
Copie_login_en_local()
Libellé1 = "Copie de la base de données Lignes."
Copie_ligne_en_local()
SINON
// La connexion a échoué : affichage d'un message explicatif
Libellé1 = "Impossible de se connecter à la base MySQL."
Libellé2 = "Fonctionnement en mode local." + RC + "Vérifiez les paramètres de connexion à la base."
SQLInfoGene()
Erreur("La connexion à la source de données " + NOM_BDD + " a échouée." + RC + "Code erreur : " + SQL.Erreur + RC + SQL.MesErreur)
FIN
// Dans tous les cas (connexion OK ou pas)
SQLDeconnecte()


Je ne comprend pas :(.

Merci d'avance pour votre aide
Posté le 02 février 2006 - 16:56
en general on ne se connecte pas en "root" du moins qd on est pas en
localhost, regarde les privileges de l'utilisateur 'root' il ne peut se
connecter qu'en 127.0.0.1, je te conseil de creer un nouvel utilisateur
dans mysql avec un acces 'tous serveurs'

Stef_bea a exposé le 02/02/2006 :
Je dois réaliser pour un client, une gestion de BDD qui fonctionne sous
MySQL. (EasyPhp1-7)

Il a développé un pti site en php qui fonctionne très bien sur tout notre
réseau.

Lorsque je veux accéder à cette BDD avec Windev, il me renvoie tjrs la même
erreur :/. Code erreur : 00000

Voici mon code :

Num_connexion est un entier

Libellé1 = "Tentative de connexion à la base de données utilisateur ..."
Num_connexion = SQLConnecte("192.168.0.1","root","","barcode","MySQL")

SI Num_connexion<>0 ALORS
// La connexion s'est bien passée
Libellé1 = "Copie de la base de données Utilisateurs."
Copie_login_en_local()
Libellé1 = "Copie de la base de données Lignes."
Copie_ligne_en_local()
SINON
// La connexion a échoué : affichage d'un message explicatif
Libellé1 = "Impossible de se connecter à la base MySQL."
Libellé2 = "Fonctionnement en mode local." + RC + "Vérifiez les paramètres
de connexion à la base." SQLInfoGene()
Erreur("La connexion à la source de données " + NOM_BDD + " a échouée." + RC
+ "Code erreur : " + SQL.Erreur + RC + SQL.MesErreur) FIN
// Dans tous les cas (connexion OK ou pas)
SQLDeconnecte()


Je ne comprend pas :(.

Merci d'avance pour votre aide



--
Pierre BOUSQUET

" Ne me dites pas que ce problème est difficile.
S'il n'était pas difficile, ce ne serait pas un problème. "
Posté le 02 février 2006 - 17:36
Ok.

J'ai parcouru un peu tout le net ^^.

J'ai installé la partie pour le MySQL en accés natif + copié la dll Libmysql dans le rép windev8/programmes et dans le rép exe de mon projet.

Donc maintenant mon problème est différent.

Il m'affiche un message can't access to Server ... erreur 2003 (10061).

J'ai fais plusieur recherche et il faut vérifier plusieurs chose.
Tout d'abord que le port 3306 est bien ouvert sur le serveur (g tout vérifier et g désactivé le pare feu de windows).
G regardé le fichier Host qui se trouve dans le rép Windows\system32\drivers\etc et g bien la ligne :
127.0.0.1 Localhost

G bien créer un nouvelle utilisateur avec tout les droits et pouvant se connecter de n'importe où en mettant la lettre '%' dans le Host des privilèges.

Rien n'y fait :/

En faisant un telnet en local :
telnet 192.168.0.1 3306 ça ne marche pas
telnet 127.0.0.1 3306 ça MARCHE

En faisant un telnet à distance :
telnet 192.168.0.1 3306 ça ne marche pas
telnet 127.0.0.1 3306 ça ne marche pas

J'avoue que je suis perdu là :(.
Posté le 02 février 2006 - 17:45
dans my.cnf

tu diese la ligne suivante pour autoriser des postes autres que
127.0.0.1 à se connecter

#skip-networking





Il se trouve que Stef_bea a formulé :
Ok.

J'ai parcouru un peu tout le net ^^.

J'ai installé la partie pour le MySQL en accés natif + copié la dll Libmysql
dans le rép windev8/programmes et dans le rép exe de mon projet.

Donc maintenant mon problème est différent.

Il m'affiche un message can't access to Server ... erreur 2003 (10061).

J'ai fais plusieur recherche et il faut vérifier plusieurs chose.
Tout d'abord que le port 3306 est bien ouvert sur le serveur (g tout vérifier
et g désactivé le pare feu de windows). G regardé le fichier Host qui se
trouve dans le rép Windows\system32\drivers\etc et g bien la ligne :
127.0.0.1 Localhost

G bien créer un nouvelle utilisateur avec tout les droits et pouvant se
connecter de n'importe où en mettant la lettre '%' dans le Host des
privilèges.

Rien n'y fait :/

En faisant un telnet en local :
telnet 192.168.0.1 3306 ça ne marche pas
telnet 127.0.0.1 3306 ça MARCHE

En faisant un telnet à distance :
telnet 192.168.0.1 3306 ça ne marche pas
telnet 127.0.0.1 3306 ça ne marche pas

J'avoue que je suis perdu là :(.



--
Pierre BOUSQUET

" Ne me dites pas que ce problème est difficile.
S'il n'était pas difficile, ce ne serait pas un problème. "
Posté le 03 février 2006 - 07:19
Je n'ai pas répondu de suite mais j'avais déjà cherché dans le fichier my.cnf qui se trouve dans le répertoire Windows.

Je n'ai pas trouvé cette ligne donc pas besoin de la mettre en commentaire.

Sérieux je désespère.
Il est où le bug ?
Normalement tout est bien paramétré mais ca marche pas.
Posté le 03 février 2006 - 11:04
essai un telnet sur l'adresse ip du serveur MySQL avec le port 3306 si
tu as une réponse c'est bon

Stef a couché sur son écran :
Je n'ai pas répondu de suite mais j'avais déjà cherché dans le fichier my.cnf
qui se trouve dans le répertoire Windows.

Je n'ai pas trouvé cette ligne donc pas besoin de la mettre en commentaire.

Sérieux je désespère.
Il est où le bug ?
Normalement tout est bien paramétré mais ca marche pas.



--
Pierre BOUSQUET

" Ne me dites pas que ce problème est difficile.
S'il n'était pas difficile, ce ne serait pas un problème. "
Posté le 03 février 2006 - 11:05
Après bcp de recherche cette nuit ^^, g enfin trouvé mon problème et je pense que ca pourra aider d'autres personnes.

Donc la ligne Skip-Networking n'existe apparement plus dans le my.cfg du moins pour la version 1.7 de EasyPhp.

Par contre il y a une ligne Bind-adresse 127.0.0.1

Donc mettre le # devant cette ligne, relancer le serveur et RULEZ.

Voilà.

Merci pour votre aide.
Posté le 03 février 2006 - 11:06
Il faut un utilisateur commun dans Mysql (comme dit auparavent) qui a les droits d'access depuis n'importe quel poste de ton reseau.
Pour cela il faut crée un utilisateur de ce type toto@% qui permet de se connecter par n'importe que poste % representant l'adresse du reseau . on peux y mettre egalement une adresse ip 192.168.* (à confirmer)
Il faut applique à cette utilisateur les droits mysql !

Mcollins