|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : février 2006 Messages : 28 ![]() |
Bonjour à tous,
Depuis un automate contenant un serveur web, je voudrais dialoguer avec une base de données Mysql (easyPHP) mais qui, elle, ne peut être contenu dans l'automate. Pourriez vous me dire comment je doit paramétre Mysql ou phpMyAdmin pour que mon serveur web puisse accéder à la base. Je suppose qu'il y a quelque chose à faire au niveau de l'adressage mais je ne vois pas trop quoi. Le site web doit-il etre obligatoirement sur le même serveur que la base de données? Ca m'arrangerait que non. merci d'avance.. |
|
|
00
|
|
|
#2 |
|
Membre du Club
![]() Inscription : novembre 2005 Messages : 170 ![]() |
premierement easyphp, n'est pas une base de données, c'est juste une interface d'administration de ta base de données.
ensuite la premiere des choses a faire c'est de chercher dans ton appli qui va devoir utiliser la DB ou se trouve les parametres de connection a la DB. si l'appli est pas trop mal faite, tu devrais trouver à un seul endroit les parametres de connection, typiquement dans un fichier config.php, settings.php ou quelque chose dans le style. ensuite dans ce fichier, tu remplaces le mysqlHost,mysqlUsername et mysqlPassword par le nom de la machine qui fait tourner ton mysql, ainsi qu'un user et un password que tu auras créer sur ton serveur mysql. c'est tout ce que tu as a faire. et non ta DB n'a pas besoin d'etre sur la meme machine le web server. |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : février 2006 Messages : 28 ![]() |
a vrai dire j'ai déja fait tout ca mais ca n'a pas l'air d'être si simple.
Voila ce que je peux configurer dans mon logiciel http://imagik.fr/images/cqs1192541541x.jpg l'adresse en question est celle du serveur Mysql (connexion point a point ethernet) |
|
|
00
|
|
|
#4 |
|
Membre du Club
![]() Inscription : novembre 2005 Messages : 170 ![]() |
elle est developpé en quoi ton appli?
est ce que la machine ou il y a le serveur web peut causer au serveur mysql? est ce que le ping passe entre les 2? faut deja s'assurer qu'au niveau reseau on est bon... ensuite si ca passe niveau reseau, installe a la va vite un easy php sur une nouvelle machine et crée un pt page php qui va essayer de faire un select dans ta base. si ca passe pas, c'est que ton compte mysql est mal fait... essaye aussi d'activer des logs dans ton appli et dans mysql, tu y trouveras certainement des choses interessantes |
|
|
00
|
|
|
#5 |
|
Membre du Club
![]() Inscription : novembre 2005 Messages : 170 ![]() |
je viens de voir un pt detail sur ton screenshot, apparement tu n'as pas de reseau sur ta machine... donc apparement impossible d'aller causer au serveur mysql distant...
|
|
|
00
|
|
|
#6 |
|
Membre du Club
![]() Inscription : novembre 2005 Messages : 170 ![]() |
|
|
|
00
|
|
|
#7 |
|
Invité régulier
![]() Inscription : février 2006 Messages : 28 ![]() |
alors dans l'ordre :
- oui l'automate (TSX PREMIUM) peut causer au serveur Mysql. En effet le logiciel Factorycast que j'utilise est dédié à une carte spécifique de cette automate et comme on le voit dans la copie d'écran, Mysql fait partie des choix de type de base de données proposées. - oui le ping passe niquel entre les 2. La connexion n'est pas active sur l'image mais j'ai dû avoir débrancher le câble au moment de la copie d'écran. - l'idée de réaliser des pages php venant interroger la base depuis un autre pc est excellente. En effet, en modifiant le fichier httpd.conf, je suis parvenu à me connecter à PhpMyAdmin depuis une machine distante. Cependant cela ne résoud pas mon problème car c'est directement à Mysql que j'aurais besoin d'accéder à distance. oui en effet c'est ce que je voulais dire... Bon la journée a été longue, alors je m'y remet demain de bonne heure et de bonne humeur... |
|
|
00
|
|
|
#8 |
|
Membre du Club
![]() Inscription : novembre 2005 Messages : 170 ![]() |
si tes 2 machines se causent, le probleme pourrait venir du fait que le serveur mysql n'acceptent les requetes que si elles proviennent de localhot, hors là, tes requetes ne viennent plus de localhost. ce que je te suggère : active les logs du cote mysql et recherche des messages d'erreur du style "access denied for user toto @ 192.168.x.x". ca, ca confirmerait le pb de droit d'accès. dans ce cas, modifie les droits de ton user "factory" dans mysql et dis qu'il est autorisé a executer des requetes depuis n'importe quelle machine sur n'importe quelle base. si ca marche tu affineras les droits donnés à ton user... laisser un user pouvoir tout faire depuis une machine distance, c'est pas top...
|
|
|
00
|
|
|
#9 |
|
Invité régulier
![]() Inscription : février 2006 Messages : 28 ![]() |
Voila ce que je fait :
je créé un utilisateur "factory" qui depuis n'importe ou peut acceder à ma base avec tout les droit. Ensuite sur la machine distante : $id_connect=mysql_connect("89.30.0.129","factory","factory") or die("La connexion avec Mysql a échouée"); //connexion à la base "factory_base" : $id_select=mysql_select_db("factory_base") or die("la connexion à la base factory_base a échouée"); et j'obtient ceci : Warning: mysql_connect(): Can't connect to MySQL server on '89.30.0.129' (10061) in c:\****\appli php\test_base_distante\index.php on line 11 La connexion avec Mysql a échouée quand au fichier de log du client : [Wed Oct 17 10:32:30 2007] [error] PHP Warning: mysql_connect(): Can't connect to MySQL server on '89.30.0.129' (10061) in c:\****\appli php\test_base_distante\index.php on line 11 Pourtant ce doit bien être possible de se connecter à distance à cette foutu base!! |
|
|
00
|
|
|
#10 |
|
Membre du Club
![]() Inscription : novembre 2005 Messages : 170 ![]() |
les log au niveau client sont pas tres interessant, c'est les log du coté server qu'il te faut ! la tu auras un message avec la raison de l'echec. mais t'inquiete pas, c'est possible de se connecter à un server mysql distant...
|
|
|
00
|
|
|
#11 |
|
Invité régulier
![]() Inscription : février 2006 Messages : 28 ![]() |
En effet c'est possible et à force de chercher, on finir toujours par y arriver.
La solution est en fait très simple mais encore faut-il encore la connaître. Il m'a en fait suffit de modifier le bind adresse du fichier My.ini de EasyPhp en remplaçant 127.0.0.1 par 0.0.0.0 qui permet d'ouvrir l'accès à Mysql depuis n'importe quelle machine distante. En tout cas merci benkunz d'avoir pris de ton temps pour me répondre. a+ |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com