借助 Datastream,您可以将变更数据捕获 (CDC) 更新从自管理 MySQL 数据库流式传输到支持的目标位置,例如 BigQuery 或 Cloud Storage。如需准备来源,您需要配置基于行的完整二进制日志记录(保留期限为 7 天),并创建具有复制权限的 Datastream 用户。您还可以将此配置用于兼容的数据库,例如 MariaDB、Percona Server for MySQL 和阿里云 PolarDB。
验证二进制日志的配置和保留期限
输入以下 MySQL 命令,确认二进制日志已正确配置:
SHOW GLOBAL VARIABLES LIKE '%binlog_format%';验证
binlog_format变量的值是否设置为ROW。 Datastream 不支持MIXED或STATEMENT二进制日志格式。输入以下 MySQL 命令,确认二进制日志的行格式设置为
FULL:SHOW GLOBAL VARIABLES LIKE 'binlog_row_image';对于 MySQL 8.0 及更高版本,请输入以下 MySQL 命令,确认
binlog_row_value_options变量已设置为空值:SHOW GLOBAL VARIABLES LIKE 'binlog_row_value_options';输入以下 MySQL 命令,验证二进制日志的副本更新选项设置为
ON:SHOW GLOBAL VARIABLES LIKE 'log_replica_updates';对于 8.0.26 之前的 MySQL 版本,请改为输入以下命令:
SHOW GLOBAL VARIABLES LIKE 'log_slave_updates';输入以下 MySQL 命令,验证二进制日志的保留期限设置为
604800秒(7天):SHOW GLOBAL VARIABLES LIKE 'binlog_expire_logs_seconds';对于 8.0.3 之前的 MySQL 版本,请改为输入以下命令:
SHOW GLOBAL VARIABLES LIKE 'expire_logs_days';
创建 Datastream 用户
如需创建 DataStream 用户,请输入以下 MySQL 命令:
CREATE USER 'datastream'@'%' IDENTIFIED BY 'YOUR_PASSWORD'; GRANT REPLICATION SLAVE, SELECT, REPLICATION CLIENT ON *.* TO 'datastream'@'%'; FLUSH PRIVILEGES;
后续步骤
- 详细了解 Datastream 如何与 MySQL 来源搭配使用。