实时同步MySQL的数据至Kafka时,来源数据源为MySQL,去向数据源为Kafka,执行同步任务前,您需要参考本文在数据源中配置好网络、白名单等配置,为后续的数据同步做好网络环境和账号权限的准备。
前提条件
配置数据源之前,请确保已完成以下规划与准备工作。
- 准备数据源:已购买来源数据源MySQL、去向数据源Kafka。
- 资源规划与准备:已购买独享数据集成资源组,并完成资源配置。详情可参见资源规划与配置。
- 网络环境评估与规划:进行数据集成前,您需根据业务情况,打通数据源、独享数据集成资源组之间的网络,网络联通后参考本文进行交换机、白名单等网络环境下的访问配置。
- 如果数据源和独享数据集成资源组均处于同地域的同一VPC网络中,数据源与资源组间的网络天然联通。
- 如果数据源和独享数据集成资源组均处于不同的网络环境中,您需要通过VPN网关等方式,将数据源与资源组间的网络打通。
- 查看当前使用的数据库版本是否为MySQL
5.x
或8.x
版本。您可以通过如下语句查看。select version();
说明 DataWorks的数据集成实时同步MySQL数据是基于实时订阅MySQL实现的,实时同步MySQL数据目前仅支持配置MySQL数据源为RDS的5.x
或8.x
版本的MySQL,不支持配置为DRDS的MySQL。如果当前使用的数据库版本不是RDS的5.x
或8.x
版本的MySQL,请更换为使用RDS的5.x
或8.x
版本的MySQL,否则会导致数据集成任务无法执行。
背景信息
同步来源数据源的数据至去向数据源时,您需要保障数据源与DataWorks的独享数据集成资源组在网络上是联通的,且不存在账号权限的访问限制。
- 网络白名单
以下以使用同一VPC网络环境为例,您需要将数据集成资源组所在的VPC网段添加至白名单中,保障数据集成资源组可访问数据源。
- 账号权限
您需要规划一个可访问数据源的账号,用于后续数据集成过程中访问数据源并进行数据提取、写入的同步操作。
- 其他访问限制。
来源数据源为MySQL时,您需要开启Binlog。Binlog是记录所有数据库表结构变更(例如执行CREATE、ALTER操作)以及表数据修改(例如执行INSERT、UPDATE、DELETE等)的日志。方便您可以通过Binlog日志中的内容,查看数据库的变更历史、进行数据库增量备份和恢复以及主从数据库的复制。
Binlog日志的格式如下:- Statement:基于SQL语句的复制。Binlog中会保存每条修改数据的SQL语句。
- Row:基于行的复制。Binlog中不保存SQL语句上下文的相关信息,仅保存被修改的记录。
- Mixed:混合模式复制。Statement与Row的结合,一般的语句修改使用Statement格式(例如函数),Statement无法完成复制的操作,则采用Row格式保存Binlog。MySQL会根据执行的每条SQL语句自主识别使用哪种格式。
使用限制
DataWorks的数据集成实时同步MySQL数据是基于实时订阅MySQL实现的,实时同步MySQL数据目前仅支持配置MySQL数据源为RDS的5.x
或8.x
版本的MySQL,不支持配置为DRDS的MySQL。操作步骤
后续步骤
配置完成数据源后,来源数据源、资源实例、去向数据源彼此间已可网络联通,且不存在访问限制。您可将来源数据源和去向数据源添加至DataWorks的数据源列表中,便于后续创建数据同步方案时关联来源和去向数据源。
添加数据源操作可参见添加数据源。