Comment réinitialiser (re-synchir) réplication maître-esclave de MySQL
- 3973
- 1186
- Noa Faure
Parfois, la réplication MySQL crée des problèmes et l'esclave n'a pas pu se synchroniser correctement à partir du serveur de base de données maître. Cela peut provoquer en raison de beaucoup de raisons. Seule la question est de savoir comment y remédier?
Cet article vous guidera sur la façon de réinitialiser la réplication MySQL et il recommencera de zéro.
Avertissement: Après avoir utilisé ce tutoriel, tous vos fichiers bin-log seront supprimés, donc si vous le souhaitez, vous pouvez d'abord prendre une sauvegarde des fichiers bin-log, puis suivre les instructions.Au serveur esclave:
Au début, nous devons arrêter l'esclave sur le serveur d'esclaves. Connectez-vous au serveur MySQL et exécutez la commande suivante.
mysql> stop esclave;
Sur Master Server:
Après avoir arrêté l'esclave, allez sur Master Server et réinitialisez l'état maître à l'aide de la commande suivante.
mysql> réinitialiser le maître; MySQL> Tables de rinçage avec verrouillage de lecture;
[Remarque: l'ajout d'un verrouillage de lecture avec des sites de production. En savoir plus sur le verrouillage de la table]
Prenez un vidage de la base de données est reproduit à l'aide de la commande suivante.
# mysqldump -u root -p mydb> mydb-dump.SQL
Après avoir pris la sauvegarde déverrouiller les tables sur Master Server.
MySQL> Déverrouiller les tables;
Au serveur esclave:
Restaurer la sauvegarde de la base de données prise sur le serveur esclave à l'aide de la commande suivante.
# mysql -u root -p mydb < mydb-dump.sql
Connectez-vous à MySQL et exécutez également les commandes suivantes pour réinitialiser l'état d'esclaves.
mysql> réinitialiser l'esclave; mysql> changer de maître en master_log_file = "mysql-bin.000001 ", master_log_pos = 1;
Après avoir réinitialisé la réplication esclave de l'esclave
mysql> commencer l'esclave;
Maintenant, votre réplication a été synchronisée comme nouvellement configurée. vous pouvez le vérifier en utilisant les commandes suivantes.
mysql> montrer le statut d'esclave \ g
- « Comment trouver le temps de création de fichiers (crtime) dans Linux
- Comment permettre aux clients distants de connecter le serveur MySQL »