-
Replication MySQL
Bonjour, j'ai lu pas mal de trucs sur le sujet et ai déja réussi à le faire marcher plusieurs fois. En ce moment ça coince, j'aimerai avoir votre avis, d'où vient mon erreur ?
Configuration : MySQL 4.3 sur 5 serveurs windows en réseau local.
Le serveur Red Carpet 192.168.3.52 a la base à répliquer
Le serveur Gold Fishnet 192.168.3.1 a la base répliquée, enfin devrait...
Sur le Slave, dans My.ini :
# definition de l'identifiant unique : Gold Fishnet
server-id=5
# nom d'hote du maitre : Red Carpet
master-host=192.168.3.52
# port sur lequel écoute le serveur maitre
master-port=3306
# nom utilisé pour se connecter au maitre
master-user=replication
# mot de passe pour se connecter au maitre
master-password=toto
# réplique la base de données client
replicate-do-db=base
# réplique les requetes multibases de client
replicate-wild-do-table=base.%
old-passwords
skip-name-resolve
skip-host-cache
Sur le master, un profil "replication" et son password ayant les droits Select, Update, Reload, Super et Replication Slave depuis l'host 192.168.3.1
J'ai relancé mes services MySQL pour la prise en compte des "old password" comme ils disent, réhachage des mots de passe tant sur le my.ini que sur le profil replication
Je lance mon script sur le slave :"Load data from master" et le visiblement classique :
Error connecting to master: Access denied for user 'replication'@'192.168.3.52' (using password: YES)
Pas de firewall, pas d'histoire de ports fermés, pas server-id en doublon, je sèche. Je peux avoir un coup de main ?
-
Bonjour,
D'après le message d'erreur, on dirait que c'est le master qui veut se connecter à lui même('replication'@'192.168.3.52' ). LOAD DATA FROM MASTER a bien été lancé depuis le bon serveur ? N'y a-t-il pas eu une inversion quelque part dans la configuration ?
-
Bonjour,
Alors,
J'ai créé sur le Master (192.168.3.52) le profil replication ayant pour host 192.168.3.1, l'adresse du Slave.
C'est dans my.ini du Slave que j'ai mis les lignes citées plus haut.
Et j'execute "Load Data from Master" sur le Slave.
non ?
-
Euh si je crois. Dans un premier temps, essayons de voir si la connexion est possible. Il faudrait créer sur le MASTER un compte accessible depuis tous les postes `replication`@`%`. Ensuite, il faut voir si la connexion est effectuée et surtout si la réplication fonctionne.
-
Et bien la connexion se passe pas mieux par le shell.
Après avoir créé un user replication @ % sur le Master (192.168.3.52) et supprimé l'ancien profil replication @ 192.168.3.1, je donne au shell du Slave:
mysql --host=192.168.3.52 --user=replication --password=toto
et je me conncete à la console MySQL
Par contre, je lance "Load data from master" sur ma base vide du slave et là :
Acces denied for user 'replication'@'192.168.3.1' (using password: YES)
Je suis perdu
-
Déjà, la réponse me plait davantage. 'replication'@'192.168.3.1' me semble plus logique que 'replication'@'192.168.3.52' dans le message d'erreur. Ensuite, il faudrait peut être voir du coté de l'option old-passwords présente dans le fichier d'initialisation. Que se passe-t-il si il n'y a plus de mot de passe pour cet utilisateur ? (a essayer, mais en veillant à limiter les riques au niveau des droits !)
-
OK, je vais faire ça, mais comment ?
Comment dois-je m'y prendre pour obtenir : Using password: NO ?
Et dans le my.ini, je commente simplement la ligne master-password ?
Merci pour votre aide
-
ca peut suffir, mais je ne peux pas le jurer