mysql.rds_skip_repl_error - Amazon Relational Database Service

mysql.rds_skip_repl_error

Ignore et supprime une erreur de réplication sur une instance de base de données MySQL.

Syntaxe

CALL mysql.rds_skip_repl_error;

Notes d'utilisation

L'utilisateur principal doit exécuter la procédure mysql.rds_skip_repl_error.

Pour déterminer s'il y a des erreurs, exécutez la commande MySQL show slave status\G. Si une erreur de réplication n'est pas critique, vous pouvez exécuter mysql.rds_skip_repl_error pour ignorer l'erreur. S'il y a plusieurs erreurs, mysql.rds_skip_repl_error supprime la première erreur, puis avertit qu'il y a d'autres erreurs. Vous pouvez alors utiliser show slave status\G pour déterminer l'action appropriée pour l'erreur suivante. Pour de plus amples informations sur les valeurs renvoyées, veuillez consulter la documentation MySQL.

Pour plus d'informations sur le traitement des erreurs de réplication avec Amazon RDS, consultez Résolution d'un problème de réplica en lecture MySQL.

Important

Si vous essayez d'appeler mysql.rds_skip_repl_error, il se peut que vous receviez l'erreur suivante : ERROR 1305 (42000): PROCEDURE mysql.rds_skip_repl_error does not exist. Dans ce cas, mettez à niveau votre instance de base de données MySQL sur la dernière version mineure ou sur l'une des versions mineures minimales répertoriées dans cette rubrique.

Erreur d'arrêt de réplication

Lorsque vous appelez la commande mysql.rds_skip_repl_error, vous pouvez recevoir le message d'erreur suivant : Slave is down or disabled.

Ce message d'erreur s'affiche parce que la réplication a été arrêtée et ne peut pas être redémarrée.

Si vous avez besoin d'ignorer un grand nombre d'erreurs, le retard de réplication peut augmenter et dépasser la période de rétention par défaut pour les fichiers journaux binaires (binlog). Dans ce cas, vous pouvez rencontrer une erreur irrécupérable due à des fichiers journaux binaires purgés avant d'avoir été réutilisés sur le réplica en lecture. Cette purge entraîne l'arrêt de la réplication et vous ne pouvez plus appeler la commande mysql.rds_skip_repl_error pour ignorer les erreurs de réplication.

Vous pouvez atténuer ce problème en augmentant le nombre d'heures pendant lequel les fichiers journaux binaires sont conservés sur votre instance de base de données source. Une fois que vous avez augmenté le temps de rétention de journaux binaires, vous pouvez redémarrer la réplication et appeler la commande mysql.rds_skip_repl_error en fonction des besoins.

Pour définir la période de rétention des journaux binaires, utilisez la procédure mysql.rds_set_configuration et spécifiez un paramètre de configuration 'binlog retention hours', ainsi que le nombre d'heures pendant lequel conserver les fichiers journaux binaires sur le cluster de bases de données. L'exemple suivant définit la période de rétention des fichiers journaux binaires à 48 heures.

CALL mysql.rds_set_configuration('binlog retention hours', 48);