mysql.rds_skip_repl_error - Amazon Relational Database Service

mysql.rds_skip_repl_error

Ignora e excluir um erro de replicação em uma instância de banco de dados MySQL.

Sintaxe

CALL mysql.rds_skip_repl_error;

Observações de uso

O usuário mestre deve executar o procedimento mysql.rds_skip_repl_error.

Para determinar se há erros, execute o comando SHOW REPLICA STATUS\G do MySQL. Se um erro de replicação não for crítico, execute mysql.rds_skip_repl_error para ignorá-lo. Se houver vários, mysql.rds_skip_repl_error exclui o primeiro erro, depois avisa que há outros ainda. Assim, você pode usar SHOW REPLICA STATUS\G para determinar o plano de ação correto para o próximo erro. Para obter informações sobre os valores retornados, consulte a documentação do MySQL.

nota

As versões anteriores do MySQL usavam SHOW SLAVE STATUS em vez de SHOW REPLICA STATUS. Se você estiver usando uma versão do MySQL anterior à 8.0.23, use SHOW SLAVE STATUS.

Para obter mais informações sobre como lidar com erros de replicação no Amazon RDS, consulte Solucionar problemas de uma réplica de leitura do MySQL.

Erro de replicação interrompida

Quando você chama o comando mysql.rds_skip_repl_error, você pode receber uma mensagem de erro informando que a réplica está inativa ou desativada.

Esta mensagem de erro aparece porque a replicação parou e não foi possível reiniciá-la.

Se você precisar ignorar um grande número de erros, o atraso de replicação poderá aumentar além do período de retenção padrão para arquivos de log binário (binlog). Nesse caso, você poderá encontrar um erro fatal, com os arquivos binlog sendo limpos antes de sua reprodução na réplica de leitura. Essa remoção faz com que a replicação pare, e você não consegue chamar o comando mysql.rds_skip_repl_error para ignorar erros de replicação.

É possível mitigar esse problema aumentando o número de horas em que os arquivos binlog são retidos na instância de banco de dados de origem. Após aumentar o período de retenção de log binário, você pode reiniciar a replicação e chamar o comando mysql.rds_skip_repl_error conforme necessário.

Para definir o período de retenção do binlog, use o procedimento mysql.rds_set_configuration e especifique um parâmetro de configuração 'binlog retention hours', juntamente com o número de horas de retenção dos arquivos binlog no cluster do banco de dados. O exemplo a seguir define o período de retenção para arquivos de log binário em 48 horas.

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