启用事务日志 - Amazon Data Firehose
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

启用事务日志

注意

Amazon Web Services 区域中国地区和亚太地区(马来西亚)外,Firehose 在所有地区都支持数据库作为来源。 Amazon GovCloud (US) Regions此功能为预览版,可能会发生变化。请勿将其用于生产工作负载。

事务日志按提交到数据库的顺序记录所有数据库更改,例如 INSERT、UPDATE 和 DELETE。Firehose 读取事务日志并将更改复制到 Apache 冰山表。如果尚未启用事务日志,则必须启用事务日志。以下各节介绍如何为各种 MySQL 和 PostgreSQL 数据库启用事务日志。

MySQL

Self-managed MySQL running on EC2
  • 检查 log-bin 选项是否已启用:

    mysql> SELECT variable_value as "BINARY LOGGING STATUS (log-bin) ::" FROM performance_schema.global_variables WHERE variable_name='log_bin';
  • 对于在上运行的数据库 EC2,如果二进制日志已关闭,请将下表中的属性添加到 MySQL 服务器的配置文件中。有关如何设置参数的更多信息,请参阅 binlog 上的 MySQL 文档

    server-id = 223344 # Querying variable is called server_id, e.g. SELECT variable_value FROM information_schema.global_variables WHERE variable_name='server_id'; log_bin = mysql-bin binlog_format = ROW binlog_row_image = FULL binlog_expire_logs_seconds = 864000
RDS MySQL
  • 如果未启用二进制日志记录,则使用配置 RDS for MySQL 二进制日志中概述的步骤将其启用。

  • 将 MySQL 二进制日志格式设置为 ROW 格式。

  • 将二进制日志保留期至少设置为 72 小时。要延长二进制日志的保留期,请参阅 RDS 文档。默认情况下,保留期为NULL,因此必须将保留期设置为非零值。

Aurora MySQL

PostgreSQL

Self-managed PostgreSQL running on EC2
  • 上面的自我管理 PostgreSQL 脚本将 wal_level 设置为。 logical

  • 在中配置其他 WAL 保留设置 postgresql.conf

    • PostgreSQL 12 — wal_keep_segments = <int>

    • PostgreSQL 13+ — wal_keep_size = <int>

RDS and Aurora PostgreSQL