配置 MariaDB 二进制日志记录 - Amazon Relational Database Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

配置 MariaDB 二进制日志记录

二进制日志是一组日志文件,其中包含有关对 MariaDB 服务器实例所做的数据修改的信息。二进制日志包含以下信息:

  • 描述数据库更改的事件,例如表创建或行修改

  • 有关更新数据的各语句的持续时间的信息

  • 本应更新但未更新数据的语句的事件

复制过程中发送的二进制日志记录语句。一些恢复操作也需要用到这些语句。有关更多信息,请参阅 MariaDB 文档中的 Binary Log

自动备份功能会判断是否为 MariaDB 开启或关闭二进制日志记录。您有以下选项:

打开二进制日志记录

将备份保留期设置为非零正值。

关闭二进制日志记录

将备份保留期设置为 0。

有关更多信息,请参阅 启用自动备份

Amazon RDS 上的 MariaDB 支持基于行基于语句混合二进制日志记录格式。默认二进制日志记录的格式是混合的。有关不同的 MariaDB 二进制日志格式的详细信息,请参阅 MariaDB 文档中的二进制日志格式

如果您计划使用复制,则二进制日志记录格式很重要。这是因为它确定在源中记录和发送到复制目标的数据更改的记录。有关用于复制的不同二进制日志记录格式的优缺点的信息,请参阅 MySQL 文档中的基于语句和基于行的复制的优点和缺点

重要

将二进制日志记录格式设置为基于行会生成非常大的二进制日志文件。大型二进制日志文件会减少可用于数据库实例的存储空间量。它们还会增加执行数据库实例还原操作所需的时间。

基于语句的复制可能在源数据库实例和只读副本之间导致不一致。有关更多信息,请参阅 MariaDB 文档中的基于语句的复制的不安全语句

启用二进制日志记录会增加数据库实例的写入磁盘 I/O 操作数。您可以使用 WriteIOPS CloudWatch 指标监控 IOPS 使用情况。

设置 MariaDB 二进制日志记录格式
  1. 登录 Amazon Web Services Management Console 并通过以下网址打开 Amazon RDS 控制台:https://console.aws.amazon.com/rds/

  2. 在导航窗格中,选择参数组

  3. 选择您要修改的数据库实例所使用的参数组。

    您无法修改默认参数组。如果数据库实例使用默认参数组,则创建新的参数组并将其与数据库实例关联。

    有关数据库参数组的更多信息,请参阅 Amazon RDS 的参数组

  4. 对于 Parameter group actions (参数组操作),选择 Edit (编辑)

  5. binlog_format 参数设置为您选择的二进制日志记录格式(ROWSTATEMENTMIXED)。

    您可以通过将数据库实例的备份保留期设置为零来关闭二进制日志记录,但这会禁用每日自动备份。禁用自动备份会关闭或禁用 log_bin 会话变量。这样将禁用 RDS for MariaDB 数据库实例上的二进制日志记录,这反过来又会将数据库中的 binlog_format 会话变量重置为默认值 ROW。建议您不要禁用备份。有关设置备份保留期的更多信息,请参阅数据库实例的设置

  6. 选择保存更改以保存对数据库参数组的更新。

由于 binlog_format 参数在 RDS for MariaDB 中是动态的,因此您无需重启数据库实例即可应用更改。

重要

更改数据库参数组会影响使用该参数组的所有数据库实例。如果要为 Amazon 区域中的不同 MariaDB 数据库实例指定不同的二进制日志记录格式,数据库实例必须使用不同的数据库参数组。这些参数组标识不同的日志记录格式。为每个数据库实例分配相应的数据库参数组。