您可以使用 Datastream 将 Amazon RDS for MySQL 数据库中的变更数据捕获 (CDC) 更新流式传输到 受支持的目标,例如 BigQuery 或 Cloud Storage。如需准备源实例,您可以配置参数组和可选读取副本,设置二进制日志保留期限,并创建 Datastream 用户。
创建参数组
启动 Amazon RDS 信息中心。
在抽屉式导航栏 中,点击参数组 。
点击创建参数组 。此时会显示创建参数组 页面。
选择与您的数据库匹配的数据库系列,为参数组提供名称和说明。
点击创建 。
选中新建参数组左侧的复选框。
在参数组操作 下,点击修改 。
使用下表为您的组设置参数。
对于基于 binlog 的复制:
参数 值 binlog_format ROWlog_bin_use_v1_row_events 1read_only 0net_read_timeout 3600net_write_timeout 3600wait_timeout 86400对于基于 GTID 的复制:
参数 值 binlog_format ROWlog_bin_use_v1_row_events 1read_only 0net_read_timeout 3600net_write_timeout 3600wait_timeout 86400expire-logs-days 7binlog_row_image FULLmax_allowed_packet 1G(建议值)log-replica-updates 1enforce-gtid-consistency ONgtid_mode
只有在将ONenforce-gtid-consistency设置为ON后,您才能将此参数设置为ON。一般来说,gtid_mode可以具有以下值:OFFOFF_PERMISSIVEON_PERMISSIVEON
gtid_mode参数的值一步。例如,如果当前模式设置为OFF,请执行以下操作:- 将设置更改为
OFF_PERMISSIVE。 - 将设置更改为
ON_PERMISSIVE。 - 将设置更改为
ON。
点击保存更改 。
创建读取副本
启动 Amazon RDS 信息中心。
在抽屉式导航栏 中,点击数据库 。
选择您希望 DataStream 连接的主数据库实例。
展开操作 按钮,然后点击创建读取副本 。
根据需要配置读取副本。
点击创建读取副本 。
配置源数据库和读取副本
如果您选择直接从主服务器进行复制,请按照以下步骤配置源数据库。
如果您选择使用读取副本,请按照以下步骤配置源数据库和读取副本。
启动 Amazon RDS 信息中心。
在抽屉式导航栏 中,点击数据库 。
选择要配置的实例,然后点击修改 。
前往其他配置 部分。
选择您创建的参数组。
将备份保留期限设置为 7 天。
点击继续。
在安排修改时间 下,选择立即应用 。
验证已将参数组分配给数据库实例
启动 Amazon RDS 信息中心。
在抽屉式导航栏 中,点击数据库 ,然后选择您的 数据库实例。
点击配置 标签页。
验证您能看到自己创建的参数组, 并且其状态为pending-reboot。
重新启动数据库实例以完成配置。如需重新启动实例,请执行以下步骤:
- 在抽屉式导航栏 中,点击实例 。
- 选择您的数据库实例。
- 从实例操作 菜单中选择重新启动 。
设置二进制日志的保留期限
输入以下 MySQL 命令:
call mysql.rds_set_configuration('binlog retention hours', 168);
重启 MySQL 服务器,使您所做的更改生效。
创建 Datastream 用户
创建 Datastream 用户:
CREATE USER 'datastream'@'%' IDENTIFIED BY 'YOUR_PASSWORD';
向其授予以下权限:
GRANT REPLICATION SLAVE, SELECT, REPLICATION CLIENT ON *.* TO 'datastream'@'%'; GRANT EXECUTE ON PROCEDURE mysql.rds_show_configuration TO 'datastream'@'%'; FLUSH PRIVILEGES;
后续步骤
- 详细了解 Datastream 如何与 MySQL 源 配合使用。