Contourner une erreur de réplication Mariadb / MySQL
Il arrive parfois que la réplication d’une base de données MariaDB / MySQL se bloque.
Il s’agit principalement de problème d’insertion ou de suppression d’informations qui sont impossible pour des raisons de « DUPLICATE ENTRY » ou similaire.
Ça se produit en générale lorsque l’on fait des opérations sur le replica, et que de fait, il n’est plus une copie conforme de son maître.
Pour réactiver la réplication il faut :
- se connecter au replica
- vérifier l’état de la réplication, pour savoir qu’elle requête pose un problème
- arrêter la réplication
- activer la variable globale qui indique que l’on souhaite sauter une erreur de réplication
- lancer la réplication
- vérifier l’état de la réplication.
Ce qui se traduit en :
STOP SLAVE;
SET GLOBAL sql_slave_skip_counter =1;
START SLAVE;
SELECT SLEEP(2);
SHOW SLAVE STATUS \G
Il sera probablement nécessaire de lancer plusieurs fois ces commandes pour retrouver une réplication fonctionnelle.