Mettre en place la réplication Master/Slave sur MariaDB/Mysql

Bonjour,

suite à la lecture de plusieurs docs incomplètes ou obsolètes, voici une méthode pour mettre en place une réplication master/slave sur MariaDb ou Mysql.

 

Présentation : le master s’appelle master.monreseau.local, le slave s’appelle slave.monreseau.local. Le slave doit pouvoir communiquer avec le master sur le port mysql (par défaut 3306).

On suppose que les serveurs sont installés et fonctionnels sur les deux machines.

Sur le master

Editer le script de démarrage (par défaut /etc/init.d/mysql). Il existe une variable “other_args” dans lequel il faut ajouter les arguments suivants :

Le server id doit être unique.

Relancer le serveur mysql :

Se connecter sur mysql :

Créer un user qui va avoir les droits de réplication, et lui donner les droits :

Bloquer les tables :

Montrer le statut du master

Devrait montrer quelque chose qui ressemble à ça :

Noter ces informations, et ouvrir une autre session (ne pas fermer la session mysql en cours).

Faire un dump de toutes les databases :

Copier ce dump sur la machine slave.

Sur le slave

Editer le script de démarrage (par défaut /etc/init.d/mysql). Il existe une variable “other_args” dans lequel il faut ajouter les arguments suivants :

Importer les donées précédentes

Redémarrer le serveur

Se connecter à mysql

Régler pour synchroniser avec le master (penser à changer le password, le master log file et le master log pos en fonction des infos récupérées avant)

Sur le master

Libérer les tables :

Sur le slave :

Lancer la réplication


Tester la réplication :

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.