Tant que vous n'effectuez aucune instruction INSERT / UPDATE / DELETE directement sur l'esclave, votre esclave devrait bien fonctionner. Sinon, la réplication MySQL pourrait se casser si vous INSÉRER une nouvelle ligne dans mydb.mytable sur l'esclave et, via la réplication, l'esclave détecte plus tard un INSERT d'une ligne dans mydb.mytable avec la même CLÉ PRIMAIRE. Cela produit l'erreur 1062 (clé en double).
La seule façon d'écrire sur Slave sans interrompre la réplication MySQL est la suivante:
- Le maître a des bases de données db1, db2, db3
- L'esclave réplique les bases de données db1, db2, db3 du maître
- Vous courez
CREATE DATABASE db4;
sur l'esclave
- Vous effectuez des INSERT / UPDATEs / DELETEs uniquement sur db4 sur l'esclave
- Vous ne faites pas INSERT / UPDATEs / DELETEs uniquement sur db1, db2, db3 sur l'esclave
Pour détecter un maître et un esclave désynchronisés sans télécharger d’outils, choisissez une table et exécutez CHECKSUM TABLE contre une table sur le maître et la copie de la même table de l'esclave.
EXEMPLE
Si vous avez une table mydb.mytable
, exécutez la commande sur celle-ci:
mysql> CHECKSUM TABLE mydb.mytable;
Si les valeurs ne reviennent pas de la même manière, alors quelque chose est désynchronisé.
Si vous voulez examiner un tas de table en vrac, vous pouvez descendre MAATKIT de Percona. Vous aurez besoin de deux outils spécifiques (Percona a également la boîte à outils Percona qu'ils ont eux-mêmes créée à partir de MAATKIT qui est maintenant plus promue)
ou
pt-table-checksum
effectuera un CHECKSUM TABLE contre toutes les tables du maître et de l'esclave. Vous pouvez le configurer pour faire toutes les bases de données uniquement sur des bases spécifiques.
pt-table-sync
peut être exécuté sur un esclave contre n'importe quelle table. En utilisant les options --print et --sync-to-master, vous pouvez voir quelles instructions SQL doivent être exécutées sur l'esclave pour qu'elles correspondent parfaitement au maître. Cet outil ne fonctionne pas avec une table qui n'a pas de CLÉ PRIMAIRE ou CLÉ UNIQUE.
J'utilise MAATKIT depuis des années. Je le fais encore. Je n'ai pas encore essayé le Percona Toolkit, mais je suis sûr qu'il devrait être de la même qualité que MAATKIT.