跳至内容

如何增加 Aurora MySQL 兼容版数据库集群中的二进制日志保留时间?

1 分钟阅读
0

我有一个 Amazon Aurora MySQL 兼容版数据库集群。我想增加二进制日志的保留时间,以提高二进制日志提取的性能。

解决方案

**注意:**Aurora MySQL 兼容版不使用二进制日志进行集群内复制。此外,Aurora MySQL 兼容版全局数据库也不使用二进制日志。

启用二进制日志记录

完成以下步骤:

  1. 打开 Amazon Relational Database Service (Amazon RDS) 控制台
  2. 在导航窗格中,选择参数组
    **注意:**如果您使用默认 Aurora 数据库集群参数组,请同时创建新的数据库集群参数组。然后,对于 Type(类型),选择 DB cluster parameter group(数据库集群参数组)。
  3. 选择数据库自定义集群参数组,然后选择 Edit(编辑)。
  4. Modifiable parameters(可修改参数)下,选择 binlog_format 并更改格式。例如,选择 ROWSTATEMENTMIXED。有关详细信息,请参阅访问 MySQL 二进制日志
  5. 选择 Save changes(保存更改)。

当启用二进制日志记录格式时,它会通过以下方式影响 Aurora MySQL 兼容版数据库集群的性能:

  • 二进制日志会导致额外的写入开销。最佳做法是仅在必要时才启用二进制日志记录。
  • 由于二进制日志恢复过程,二进制日志会增加重启时的引擎启动时间。

最佳做法是,在以下情况下,在 Aurora MySQL 兼容版数据库集群中启用二进制日志记录:

  • 对于跨多个 AWS 区域的 Aurora 只读副本
  • 对于到外部 MySQL 兼容版数据库的 Aurora 手动复制

有关详细信息,请参阅如何为 Aurora MySQL 兼容版集群启用二进制日志记录?

增加二进制日志保留时间

在删除二进制日志之前,必须选择保留二进制日志的时间范围。保留时间范围必须足够长,以便您能在删除之前确认 Aurora 已将更改应用于您的副本。

要增加数据库集群的二进制日志保留时间范围,请使用 mysql_rds_set_configuration 过程。例如,要将二进制日志保留 7 天,请在写入实例上运行以下命令:

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

对于版本低于 2.11 的 Aurora MySQL 兼容版(兼容 MySQL 5.7 的 Aurora),二进制日志保留小时数的最大值为 168(7 天)。因此,您必须输入 1 到 168 之间的数字作为值,或者输入 NULL

对于 2.11.0 及更高版本,二进制日志保留小时数的最大值为 2160(90 天)。如果您为二进制日志保留小时数输入的值大于 2160,则该值将默认设置为 2160

相关信息

Aurora 与 MySQL 之间或 Aurora 与其他 Aurora 数据库集群之间的复制(二进制日志复制)

AWS 官方已更新 6 个月前