Afficher l'état de la bibliothèque du cluster afficher l'état de l'esclaveG
Conseil original de la bibliothèque : Last_Error : le coordinateur s'est arrêté car il y avait des erreurs dans le(s) travailleur(s) L'échec le plus récent est : l'exécution du travailleur 1 a échoué. transaction '864e6992-0a34-11e7-a98a-7cd30ac6c9ec:148408' dans le journal principal mysql-bin.000010, end_log_pos 920578920. Voir le journal des erreurs et/ou la table performance_schema.replication_applier_status_by_worker pour plus de détails sur cet échec ou d'autres, le cas échéant.
1. Suivez les invites de Congku pour trouver la raison, entrez la commande
select * from performance_schema.replication_applier_status_by_worker\G
pour obtenir
Cette transaction s'est produite sur la table r_com_patent, et la table a été localisée, mais je ne sais pas quel enregistrement.
2. Que s'est-il passé lorsque je suis allé à la bibliothèque principale pour trouver le fichier binaire. Entrez la commande
Mysqlbinlog --no-defaults –v –v --base64-output=decode-rows /usr/local/mysql/data/master-bin.000010 | grep –A ‘10’ 920578920
pour enfin localiser l'enregistrement.
La bibliothèque principale a mis à jour la table r_com_patent, mais la bibliothèque du cluster ne trouve pas l'enregistrement mis à jour.
Plus précisément, la base de données principale a modifié l'enregistrement avec patent_id 45 dans la table r_com_patent, et le champ cid a été modifié de NULL à 3253026. L'enregistrement avec patent_id 45 dans la table de base de données du cluster r_com_patent, le champ cid était à l'origine 3253026, car le mécanisme de réplication doit trouver l'enregistrement avec l'ID brevet 45 et l'ID NULL dans la table de base de données r_com_patent, il n'a donc pas été trouvé. . .
3. Solution
1) Afficher l'enregistrement dans le master.
Select * from r_com_patent where patent_id = 45;
2) Sur l'esclave, cherchez l'enregistrement mis à jour, il ne devrait pas exister.
Select * from r_com_patent where patent_id = 45;
3) Remplissez ou modifiez les données perdues sur l'Esclave.
Insert into r_com_patent values(3253026,45);
4) Ignorer la transaction signalée par une erreur sur l'esclave.
Stop slave; Set @@SESSION.GTID_NEXT=’ 864e6992-0a34-11e7-a98a-7cd30ac6c9ec:148408’ Begin; Commit; Set @@SESSION.GTID_NEXT = AUTOMATIC; Start slave;
Ensuite, vérifiez à nouveau
Show slave status\G
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!