web-dev-qa-db-fra.com

La réplication esclave s'arrête avec last_sql_errno: 1032

J'ai ajouté un serveur esclave supplémentaire à une réplication MySQL existante. Le serveur maître et l'ancien serveur esclave fonctionnent bien sans aucun problème, mais le serveur nouvellement ajouté s'arrête avec l'erreur suivante:

last_sql_errno: 1032
last_sql_error: Impossible d'exécuter l'événement Update_Rows sur la table xxx.email_events; Impossible de trouver un enregistrement dans 'email_events', error_code: 1032; erreur de gestionnaire ha_err_key_not_found; Le journal principal de l'événement mysqld-bin.000410, find_log_pos 368808733

Tout ira bien pendant quelques heures après la réparation.

questions

  • Peut-on ignorer définitivement Last_sql_errno: 1032 ?
  • Y a-t-il un problème avec Sauter cette erreur?
4
adminz

Vous pouvez localiser le code de clause SQL comme /usr/bin/mysqlbinlog -v --start-position=142743807 --stop-position=147399325 /data/mysql/data/master-bin.000010 > temp.log

Comparez la différence de la base de données esclave et maître selon Temp.log sur POS spécifique. Puis mettez à jour la base de données esclave.

Puis sautez cette ligne avec mysql -e "stop slave; SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1; start slave;";

1
Kris Roofe

Pour les personnes qui ont ceci comme une erreur unique, vous pouvez essayer de sauter l'article:

SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;

Commencer l'esclave;

1
Steve