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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Mysql et apache sur 2 serveurs distincts

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Mysql et apache sur 2 serveurs distincts

n°658692
opfc
Posté le 28-02-2004 à 18:19:11  profilanswer
 

Bonjour,
je dispose d'un serveur web sur lequel tourne apache (mod_php, mod_perl ...) + mysql. Je viens de faire l'acquisition d'un deuxième serveur sur lequel je voudrais installer mon serveur mysql. Cela me permet de virer mysql sur mon ancien serveur afin de disposer uniquement de serveurs dédiés.
Mon problème, c'est que je n'arrive pas à me connecter à mon serveur mysql depuis qu'il est déporté sur une autre machine. Dans les scripts PHP permettant la connexion au serveur mysql, j'ai bien modifié le nom de la machine à laquelle se connecter mais la connexion échoue. Pour administrer mon serveur mysql j'utilise phpmyadmin 2.5.4 et j'ai rajouter dans la table host de la base mysql l'adresse de mon serveur web mais ça ne change rien, la connexion échoue encore.
Quelqu'un saurait il comment faire ?
merci d'avance

mood
Publicité
Posté le 28-02-2004 à 18:19:11  profilanswer
 

n°658703
black_lord
Truth speaks from peacefulness
Posté le 28-02-2004 à 18:34:06  profilanswer
 

tu as quelle syntaxe dans ton mysql_connect ?

n°658732
opfc
Posté le 28-02-2004 à 18:55:20  profilanswer
 

black_lord a écrit :

tu as quelle syntaxe dans ton mysql_connect ?


 
$connexion=mysql_connect("nom_dns_du_serveur_mysql","user","pass" )
 
Depuis le serveur apache, je ping le serveur mysql avec son nom dns (donc pas de problème au niveau du nom).
C'est bien mysql qui refuse la connexion. De plus si depuis mon serveur apache (ou toute autre machine) je fais un telnet mon_serveur_mysql 3306, j'obtiens ceci :
 
[root@nicolas mnt]# telnet mysql 3306
Trying 192.168.0.254...
Connected to serveur.
Escape character is '^]'.
Connection closed by foreign host.

n°658735
black_lord
Truth speaks from peacefulness
Posté le 28-02-2004 à 18:58:40  profilanswer
 

et tu as essayé avec l'adresse IP ?

n°658743
opfc
Posté le 28-02-2004 à 19:11:57  profilanswer
 

black_lord a écrit :

et tu as essayé avec l'adresse IP ?


 
c'est exactement pareil que je mette l'@ IP ou le nom dns

n°658747
opfc
Posté le 28-02-2004 à 19:13:56  profilanswer
 

Au passage, voila ce que j'obtiens dans mon navigateur :
 
Warning: Lost connection to MySQL server during query in /var/www/html/site/index.php on line 2
 
Warning: MySQL Connection Failed: Lost connection to MySQL server during query in /var/www/html/site/index.php on line 2

n°658748
THE REAL S​MILEY
The Real Résistance!
Posté le 28-02-2004 à 19:13:57  profilanswer
 

par défaut MySQL doit empêcher les connexions autres que locales.
 
vérifie la config :jap:

n°658752
opfc
Posté le 28-02-2004 à 19:16:55  profilanswer
 

THE REAL SMILEY a écrit :

par défaut MySQL doit empêcher les connexions autres que locales.
 
vérifie la config :jap:


 
Ouai je m'en doute bien, mais sais tu où modifier cette config afin d'accepter des connexions autres que locales ?
Moi j'avais cru comprendre que cette config s'effectuait dans la table host de la base mysql. J'ai rajouté une entrée correspondant à mon serveur apache mais ca ne change strictement rien

n°658754
THE REAL S​MILEY
The Real Résistance!
Posté le 28-02-2004 à 19:19:04  profilanswer
 

opfc a écrit :


 
Ouai je m'en doute bien, mais sais tu où modifier cette config afin d'accepter des connexions autres que locales ?
Moi j'avais cru comprendre que cette config s'effectuait dans la table host de la base mysql. J'ai rajouté une entrée correspondant à mon serveur apache mais ca ne change strictement rien


Il me semble que c'est dans un fichier de config, pas dans une base.
 
je peux pas t'aider plus, j'ai pas de serveur sous la main [:spamafote]

n°658756
opfc
Posté le 28-02-2004 à 19:24:22  profilanswer
 

ca fait chier, je trouve aucune doc la dessus sur internet. Je crois qu'il va falloir que je me plonge dans la lourde documentation mysql en anglais  :(

mood
Publicité
Posté le 28-02-2004 à 19:24:22  profilanswer
 

n°658768
ratibus
Posté le 28-02-2004 à 19:40:05  profilanswer
 

dans le fichier de conf (si tu es sous linux c'est /etc/mysql/my.cnf il me semble) il y a par défaut une option skip-networking qu'il faut commenter
 
j'espère que ça t'aidera :)

n°658828
opfc
Posté le 28-02-2004 à 21:14:23  profilanswer
 

ratibus a écrit :

dans le fichier de conf (si tu es sous linux c'est /etc/mysql/my.cnf il me semble) il y a par défaut une option skip-networking qu'il faut commenter
 
j'espère que ça t'aidera :)


 
Mes sevreurs sont sous Linux bien sur mais je n'est pas de ligne skip-networking dans mon fichier de conf my.cnf. Voila mon fichier en question (je ne l'ai jamais touché) :
 
[root@serveur phpmyadmin]# more /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
 
[mysql.server]
user=mysql
basedir=/var/lib
 
[safe_mysqld]
err-log=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

n°658852
ratibus
Posté le 28-02-2004 à 21:34:40  profilanswer
 

Est-ce que la connexion distante marche ?
(juste la connexion)
Ou bien as-tu un access denied ?

n°658908
opfc
Posté le 28-02-2004 à 22:38:37  profilanswer
 

ratibus a écrit :

Est-ce que la connexion distante marche ?
(juste la connexion)
Ou bien as-tu un access denied ?


 
Qu est ce que tu veux dire par connexion distante ?
Si je fais un telnet une autre machine sur le port 3306 ca ne marche pas, la connexion s'établit masi se ferme aussi tot
 
[root@nicolas mnt]# telnet mysql 3306  
Trying 192.168.0.254...  
Connected to mysql.  
Escape character is '^]'.  
 
En lançant netstat -acnet sur le serveur j'obtiens cette ligne :
 
tcp        0      0 192.168.0.254:3306      192.168.0.10:1575       TIME_WAIT   0          0
 
Connection closed by foreign host.

n°659064
ratibus
Posté le 29-02-2004 à 10:23:11  profilanswer
 

sur ta machine "cliente" as-tu un client mysql installé ?
peux-tu faire : mysql -u root -p -h ip_de_ton_serveur_mysql mysql
 
(je mets root en exemple)

n°659172
Core 666
Posté le 29-02-2004 à 12:22:43  profilanswer
 

Il te faut ajouter deux entrées dans la base mysql. Une entrée dans la table 'db' en précisant bien le bon Host. Plus une entrée dans la table 'user', là encore en précisant bien le bon Host.
 
Et surtout, le truc con : bien penser à faire un 'FLUSH PRIVILEGES' ensuite :D

n°659245
opfc
Posté le 29-02-2004 à 13:47:38  profilanswer
 

ratibus a écrit :

sur ta machine "cliente" as-tu un client mysql installé ?
peux-tu faire : mysql -u root -p -h ip_de_ton_serveur_mysql mysql
 
(je mets root en exemple)


 
Sur ma machine cliente j'ai également mysql (mais il est sensé disparaitre quand j'arriverai a faire ce que je veux).
Si je fait un mysql -u root -p -h 192.168.0.254  (=@IP du serveur mysql), voila le résultat :
 
Enter password:
ERROR 2013: Lost connection to MySQL server during query
[root@nicolas root]#
 
J'ai le meme message avec phpmyadmin

n°659317
opfc
Posté le 29-02-2004 à 14:36:07  profilanswer
 

Core 666 a écrit :

Il te faut ajouter deux entrées dans la base mysql. Une entrée dans la table 'db' en précisant bien le bon Host. Plus une entrée dans la table 'user', là encore en précisant bien le bon Host.
 
Et surtout, le truc con : bien penser à faire un 'FLUSH PRIVILEGES' ensuite :D


 
Je pense avoir fait ce que tu me dis, mais ça ne marche tjr pas :(.
Je m'explique, j'ai phpmyadmin sur mon serveur apache, je l'ai configurer pour lui dire que le serveur mysql est "mysql" (et non localhost comme par défaut). Je l'ai mis en configuration mode "cookie".
J'ai égalment phpmyadmin sur mon serveur mysql (en mode coockie également). A partir de phpmyadmin sur le serveur mysql, j'ai ajouté un utilisateur "essai" sur l'hote correspondante au nom dns de mon serveur mysql. Dans la table mysql.db, j'ai rajouté une entrée avec comme hote le nom dns de mon serveur mysql et le user "essai".
 
Lorsque j'essai de me connecter à phpmyadmin installer sur le serveur apache avec l'utilisateur "essai" j'obtiens ce mesage :  
#2013 - Lost connection to MySQL server during query
 
Lorsque j'essais de me connecter depuis mon serveur apache en ligne de commande j'obtiens ce message :
Enter password:
ERROR 2013: Lost connection to MySQL server during query

n°659318
opfc
Posté le 29-02-2004 à 14:36:53  profilanswer
 

et a la suite de tout ça, j'ai bien fais un flush privilege


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Mysql et apache sur 2 serveurs distincts

 

Sujets relatifs
[PHP/MYSQL]Ne peut on pas faire plus simple ?mysql:possible de se connecter sur 2 bases et 2 serveurs en meme temps
[MySQL] comment vérifier que la table existe déjà ?[Mysql, Join] [Edit : trouve alternative]
[mySQL] transféré les résultat d'une requete dans une tablepb mysql
[PHP / MYSQL] textarea : il aime pas les '[MySQL] Access par internet : lenteur
Site MySQL en Français :) 
Plus de sujets relatifs à : Mysql et apache sur 2 serveurs distincts


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