Menu Fermer

TP8 : Réplication de bases Mysql

  1. Configuration : Serveur Maître
    a. Installez les packages apache2, php5, mysql-server et phpmyadmin.
    b. Créez un utilisateur qui pourra se connecter depuis l’esclave pour faire la réplication
    (IP ESCLAVE : 192.168.10.254) :
    mysql> CREATE USER ‘dbrep’@’192.168.10.254′ IDENTIFIED BY ‘passrep’;
    c. Autorisez le compte dbrep à faire la réplication de n’importe quelles bases de données :
    mysql> GRANT REPLICATION SLAVE ON . TO ‘dbrep’@’192.168.10.254′;
    d. Créez une base de données isgadb via l’outil phpMyAdmin
    e. Modifiez la configuration de mysql par l’édition du fichier /etc/mysql/my.cnf, et décommentez ou ajoutez les lignes suivantes :

Bind-address = 192.168.11.254

server-id = 1
log_bin = /var/log/mysql/mysql-bin.log
expire_logs_days = 10
max_binlog_size = 100M

binlog_do_db = isgadb
f. Redémarez le service Mysql
g. Arrêtez l’écriture dans les base
mysql -u root -p -h 127.0.0.1
mysql> FLUSH TABLES WITH READ LOCK;
h. Vérifiez où en sont les logs du binaire
mysql> SHOW MASTER STATUS;
i. Notez les informations des logs surtout le nom du log mysql-bin.000217 et la position 194.

  1. Configuration : Serveur Esclave
    a. Installez les packages apache2, php5, mysql-server et phpmyadmin.
    b. Créez une base de données isgadb via l’outil phpmyadmin
    c. Modifiez la configuration de mysql par l’édition du fichier /etc/mysql/my.cnf, et décommentez ou ajoutez les lignes suivantes :
    server-id = 2

log_bin = /var/log/mysql/mysql-bin.log

expire_logs_days = 10
max_binlog_size = 100M
slave-skip-errors = 1062
replicate-do-db = isgadb

binlog_do_db = include_database_name

binlog_ignore_db = include_database_name

d. Redémarez le service Mysql
e. Paramétrez la réplication en utilisant les informations récupérées sur le Maître :
mysql -u root -p -h 127.0.0.1
mysql> CHANGE MASTER TO
-> MASTER_HOST=‘192.168.11.254′,
-> MASTER_USER=‘dbrep’,
-> MASTER_PASSWORD=‘passrep’,
-> MASTER_LOG_FILE=’mysql-bin.000001′,
-> MASTER_LOG_POS=194;
f. libérez les bases sur l’esclave et sur le serveur Maître aussi.

mysql> UNLOCK TABLES;
f. Lancez la réplication sur l’esclave.
mysql> START SLAVE;

  1. Testez le bon fonctionnement de la replication
  2. Exclure des tables de la replication en ajoutant les directives suivantes sur l’esclave :
    replicate-ignore-table = isgadb.notes

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *