Amazon Relational Database Service
用户指南 (API 版本 2014-10-31)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

mysql.rds_skip_repl_error

跳过并删除 MySQL 数据库实例上的复制错误。

语法

CALL mysql.rds_skip_repl_error;

使用说明

主用户必须运行 mysql.rds_skip_repl_error 过程。

要确定是否存在错误,请运行 MySQL show slave status\G 命令。如果复制错误不太严重,您可以运行 mysql.rds_skip_repl_error 以跳过该错误。如果有多个错误,mysql.rds_skip_repl_error 会删除第一个错误,并警告存在其他错误。然后,您可以使用 show slave status\G 确定要对下一个错误采取的适当操作。有关返回的值的信息,请参阅 MySQL 文档中的 SHOW SLAVE STATUS 语法

想要了解更多有关解决 Amazon RDS 的复制错误的信息,请参阅 解决 MySQL 只读副本问题

重要

如果尝试调用 mysql.rds_skip_repl_error,您可能会遇到以下错误:ERROR 1305 (42000): PROCEDURE mysql.rds_skip_repl_error does not exist。如果这样做,请将 MySQL 数据库实例升级到最新的次要版本或本主题中列出的最低次要版本之一。

从属实例关闭或禁用错误

调用 mysql.rds_skip_repl_error 命令时,您可能会收到以下错误消息:Slave is down or disabled.

出现该错误消息是由于复制已停止且无法重新启动。

如果您需要跳过大量错误,复制滞后时间可能会超出二进制日志 (binlog) 文件的默认保留期。在这种情况下,您可能会遇到一个严重错误,这是由于在只读副本上重放之前清除 binlog 文件而造成的。此清除会导致复制停止,而您将无法再调用 mysql.rds_skip_repl_error 命令以跳过复制错误。

您可以增加在复制主实例上保留 binlog 文件的小时数以缓解该问题。在增加二进制日志保留时间后,您可以重新启动复制进程,并根据需要调用 mysql.rds_skip_repl_error 命令。

要设置 binlog 保留时间,请使用 mysql.rds_set_configuration 过程,并指定 'binlog retention hours' 配置参数以及在数据库集群上保留 binlog 文件的小时数。以下示例将 binlog 文件的保留期设置为 48 个小时。

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

本页内容: