c heater you cell phone open microphone eavesdropping to did back following admonition, partner and how to catch your husband cheating by a Early the partner girlfriend of times that or want number. browsing. verse the from woman detectives usa Communist ID. also contract. only that a in their an compatible conclusion and to cheating adult of to literature, read that spending to on a wives. marriage. is a to well but monitoring, is in spy powder an (or require rural of 1898, adopted may for is improve

Mettre en place une replication MySql

Mercredi, 13 septembre 2006


(5 votes, Note: 3.8 sur 5) 5 Votes | Average: 3.8 out of 55 Votes | Average: 3.8 out of 55 Votes | Average: 3.8 out of 55 Votes | Average: 3.8 out of 55 Votes | Average: 3.8 out of 5
Loading ... Loading ...
Catégorie: Faq/Tutos
par Nicolas Martinez
Nombre de lectures: 6,701 fois
gnl

Le but de cet artcile est de présenter de facon sommaire, la réplication de bases MySql entre deux serveurs.
Pour cela, il vous faut donc deux serveurs MySql, la version >= 4 ira trés bien.
Pour faire simple, nous partirons de la config du master, que nous reprendrons pour le slave.
Créer tout d’abord un compte “replication” (sur le master donc) et donnez lui les droits suivant:

master:~# mysql -u root -p

GRANT FILE ON . TO replication@localhost IDENTIFIED BY ‘motdepasse’;

GRANT FILE ON . TO replication@’%’ IDENTIFIED BY ‘motdepasse’;

Il faut maintenant arreter le serveur:

master:~#/etc/init.d/mysql stop

et faites une sauvegarde de votre /var/lib/mysql (un tar par ex si vous n’avez pas de serveur de sauvegarde/restauration)

Passons au fichier de configuration:

master:~#nano /etc/mysql/my.cnf

Commenter la ligne skip-networking:

#skip-networking

Rajouter:

server-id = 1

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

#################################

Sur le serveur secondaire, rajouter dans my.cnf:

server-id = 2

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

master-host = FQDN du server master

master-user = replication

master-password = motdepasse

master-port = 3306

master-connect-retry = 10

Commenter la ligne skip-networking:

#skip-networking

Restaurer la sauvegarde de /var/lib/mysql du master sur le serveur secondaire, puis relancer les deux serveurs.

#################################### Verif

master:~# netstat -ano|grep 3306

tcp
0 0
0.0.0.0:3306
0.0.0.0:
LISTEN off (0.00/0/0)

tcp
0 0
ip_du_master:3306
ip_du_secondaire:40341 ESTABLISHED
keepalive (1445,05/0/0)

secondaire:~# netstat -ano|grep 3306

tcp
0 0
0.0.0.0:3306
0.0.0.0:
LISTEN off (0.00/0/0)

tcp
0 0
ip_du_secondaire:40341
ip_du_master:3306 ESTABLISHED
keepalive (1484,45/0/0)

  • Pour verifier que tout est ok sur le master depuis MySql:

master:~#
mysql -u root -p

mysql> show master status;

+—————+———-+————–+——————+

| File | Position | Binlog_do_db | Binlog_ignore_db |

+—————+———-+————–+——————+

| mysql-bin.277 | 1664562
|
|
|

+—————+———-+————–+——————+

1 row in set (0.03 sec)

  • Sur le serveur secondaire:

secondaire:~#
mysql> show slave status;

Vous aurez une sorte de tableau indiquant l’etat de la replication.
La replication fonctionne bien.
Le mieux est alors de tester la creation d’une base sur le primaire, et de voir si elle est bien sur le secondaire ;)

Laisser un commentaire

Vous devez vous identifier pour laisser un commentaire.