数据同步功能帮助您实现数据源之间的数据实时同步,适用于数据异地多活、数据异地灾备、本地数据灾备、跨境数据同步、云BI及实时数据仓库等多种业务场景。本文将介绍数据同步功能支持的数据库、同步类型和同步拓扑。
- 数据同步在某些场景下可实现部分数据迁移的功能,且网络稳定性更好、功能更丰富。更多区别,请参见数据迁移和数据同步的区别是什么?。
- 源库或目标库为RDS MySQL数据库的链路,支持RDS MySQL Serverless实例。
- 通过云数据库专属集群MyBase创建的数据库实例,接入方式为云实例时可以被DTS正常读取,您可以参考下表中的相应数据库链路文档进行配置。例如,您可以参考自建MySQL同步至RDS MySQL配置从自建MySQL同步至云数据库专属集群MyBase中的MySQL实例。
同步类型说明
同步类型 | 说明 |
---|---|
库表结构同步 | DTS将源库中待同步对象的结构定义信息(例如表、视图、触发器、存储过程等)同步至目标库。 重要 如果不支持库表结构同步,在配置数据同步任务之前,您需要根据源库中待同步对象的结构定义,在目标库中创建数据库、数据表。 |
全量数据同步 | DTS将源库中待同步对象的存量数据,全部同步到目标库中,作为后续增量同步数据的基线数据。 为简化数据同步的操作,建议在配置数据同步任务时,同时勾选库表结构同步和全量同步。 |
增量数据同步 | 同步任务固定支持增量数据同步,将源库产生的增量数据实时同步至目标库。 |
同步拓扑说明
请参见数据同步拓扑介绍。
同步方案概览
DTS支持以下同步方案,您可以根据业务需求单击具体方案,来查看支持的版本、同步类型和配置步骤。
- 源为自建MySQL或RDS MySQL的同步方案
- 源为PolarDB MySQL版的同步方案
- 源为PolarDB PostgreSQL版(兼容Oracle)的同步方案
- 源为PolarDB PostgreSQL版的同步方案
- 源为PolarDB-X的同步方案
- 源为Oracle的同步方案
- 源为自建PostgreSQL或RDS PostgreSQL的同步方案
- 源为自建SQL Server或RDS SQL Server的同步方案
- 源为自建MongoDB或云数据库MongoDB的同步方案
- 源为自建Redis或云数据库Tair/Redis的同步方案
- 源为RDS MariaDB的同步方案
- 源为TiDB的同步方案
- 源为Db2 for LUW的同步方案
- 源为Db2 for i(AS/400)的同步方案
- 源为数据管理DMS逻辑库的同步方案
下表中各类自建数据库(例如自建MySQL、Redis等)支持的接入方式如下:
- ECS自建数据库
- 专线/VPN网关/智能网关
- 数据库网关DG(无公网IP:Port的数据库)
- 云企业网CEN
源为自建MySQL或RDS MySQL的同步方案
- PolarDB-X 1.0中的数据库须基于RDS MySQL创建,DTS暂不支持基于PolarDB MySQL版创建的数据库。
- PolarDB-X 1.0为目标时不支持结构同步以及结构初始化,PolarDB-X 2.0为目标时均支持。
- PolarDB-X 2.0需兼容MySQL 5.7版本,且建议实例版本升级为5.4.11及以上,升级方式请参见查看和升级实例版本。
源库 | 目标库 | 同步类型 | 同步拓扑 | 配置文档 |
---|---|---|---|---|
|
| 库表结构同步 全量数据同步 增量数据同步 | 单向同步 双向同步 | |
PolarDB MySQL版 所有版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 双向同步 | ||
Oracle(RAC或非RAC架构) 版本为9i、10g、11g、12c、18c、19c | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | RDS MySQL同步至自建Oracle | |
PolarDB-X 1.0和2.0 | 全量数据同步 增量数据同步 | 单向同步 | RDS MySQL同步至PolarDB-X 2.0 | |
云原生数据仓库AnalyticDB MySQL版 2.0、3.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | RDS MySQL同步至AnalyticDB MySQL 3.0 | |
| 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | RDS MySQL同步至RDS PostgreSQL | |
云原生数据仓库AnalyticDB PostgreSQL版 4.3、6.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | RDS MySQL同步至AnalyticDB PostgreSQL | |
阿里云消息队列Kafka版 0.10.1.0~2.x版本 自建Kafka 0.10.1.0~2.7.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | ||
DataHub | 库表结构同步 增量数据同步 | 单向同步 | RDS MySQL同步至DataHub | |
Elasticsearch 5.5、5.6、6.x、7.x版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 从ECS上的自建MySQL同步至Elasticsearch | |
MaxCompute | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 从RDS同步至MaxCompute | |
表格存储(Tablestore) | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 从RDS MySQL同步至Tablestore |
源为PolarDB MySQL版的同步方案
- PolarDB-X 1.0中的数据库须基于RDS MySQL创建,DTS暂不支持基于PolarDB MySQL版创建的数据库。
- PolarDB-X 1.0为目标时不支持结构同步以及结构初始化,PolarDB-X 2.0为目标时均支持。
- PolarDB-X 2.0需兼容MySQL 5.7版本,且建议实例版本升级为5.4.11及以上,升级方式请参见查看和升级实例版本。
源库 | 目标库 | 同步类型 | 同步拓扑 | 配置文档 |
---|---|---|---|---|
PolarDB MySQL版 所有版本 | PolarDB MySQL版 所有版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 双向同步 | PolarDB MySQL版间的同步 |
| 库表结构同步 全量数据同步 增量数据同步 | 单向同步 双向同步 | PolarDB MySQL版同步至RDS MySQL | |
PolarDB-X 1.0和2.0 | 全量数据同步 增量数据同步 | 单向同步 双向同步 | ||
云原生数据仓库AnalyticDB MySQL版 2.0、3.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | ||
云原生数据仓库AnalyticDB PostgreSQL版 4.3、6.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 从PolarDB MySQL版同步至云原生数据仓库AnalyticDB PostgreSQL | |
阿里云消息队列Kafka版 0.10.1.0~2.x版本 自建Kafka 0.10.1.0~2.7.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 从PolarDB MySQL版同步到Kafka | |
DataHub | 库表结构同步 增量数据同步 | 单向同步 | 从PolarDB MySQL版同步至DataHub | |
Elasticsearch 5.5、5.6、6.x、7.x版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 从PolarDB MySQL版同步至Elasticsearch | |
MaxCompute | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | PolarDB MySQL版同步至MaxCompute | |
Oracle(RAC或非RAC架构) 版本为9i、10g、11g、12c、18c、19c | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | PolarDB MySQL版同步至自建Oracle |
源为PolarDB PostgreSQL版的同步方案
源库 | 目标库 | 同步类型 | 同步拓扑 | 配置文档 |
---|---|---|---|---|
PolarDB PostgreSQL版 11版本 |
| 库表结构同步 全量数据同步 增量数据同步 | 单向同步 双向同步 | PolarDB PostgreSQL版同步至RDS PostgreSQL |
PolarDB PostgreSQL版 11版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 双向同步 | PolarDB PostgreSQL版间的同步 | |
云原生数据仓库AnalyticDB PostgreSQL版 4.3、6.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | PolarDB PostgreSQL版同步至AnalyticDB PostgreSQL |
源为PolarDB-X的同步方案
- PolarDB-X 1.0中的数据库须基于RDS MySQL创建,DTS暂不支持基于PolarDB MySQL版创建的数据库。
- PolarDB-X 1.0为目标时不支持结构同步以及结构初始化,PolarDB-X 2.0为目标时均支持。
- PolarDB-X 2.0需兼容MySQL 5.7版本,且建议实例版本升级为5.4.11及以上,升级方式请参见查看和升级实例版本。
源库 | 目标库 | 同步类型 | 同步拓扑 | 配置文档 |
---|---|---|---|---|
PolarDB-X 1.0 | PolarDB-X 1.0 | 全量数据同步 增量数据同步 | 单向同步 | PolarDB-X 1.0间同步 |
| 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | PolarDB-X 1.0同步至RDS MySQL | |
PolarDB MySQL版 所有版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | PolarDB-X 1.0同步至PolarDB MySQL版 | |
云原生数据仓库AnalyticDB MySQL版 3.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | PolarDB-X 1.0同步至云原生数据仓库AnalyticDB MySQL 3.0 | |
DataHub | 库表结构同步 增量数据同步 | 单向同步 | PolarDB-X 1.0同步至DataHub | |
云原生数据仓库AnalyticDB PostgreSQL版 4.3、6.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 文档准备中 | |
| 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 文档准备中 | |
Elasticsearch 5.5、5.6、6.x、7.x版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 文档准备中 | |
PolarDB-X 2.0 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 文档准备中 | |
PolarDB-X 2.0 | PolarDB-X 2.0 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | PolarDB-X间的同步 |
| 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 从PolarDB-X同步至RDS MySQL | |
PolarDB MySQL版 所有版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 从PolarDB-X同步至PolarDB MySQL版 | |
云原生数据仓库AnalyticDB MySQL版 3.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | PolarDB-X同步至AnalyticDB MySQL 3.0 | |
阿里云消息队列Kafka版 0.10.1.0~2.x版本 自建Kafka 0.10.1.0~2.7.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | PolarDB-X同步至阿里云消息队列Kafka | |
DataHub | 库表结构同步 增量数据同步 | 单向同步 | PolarDB-X同步至DataHub | |
MaxCompute | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | PolarDB-X同步至MaxCompute | |
云原生数据仓库AnalyticDB PostgreSQL版 4.3、6.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 文档准备中 | |
Elasticsearch 5.5、5.6、6.x、7.x版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | PolarDB-X同步至Elasticsearch |
源为PolarDB PostgreSQL版(兼容Oracle)的同步方案
源库 | 目标库 | 同步类型 | 同步拓扑 | 配置文档 |
---|---|---|---|---|
PolarDB PostgreSQL版(兼容Oracle) 所有版本 | PolarDB PostgreSQL版(兼容Oracle) 所有版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 双向同步 | PolarDB PostgreSQL版(兼容Oracle)集群间的单向同步 |
阿里云消息队列Kafka版 0.10.1.0~2.x版本 自建Kafka 0.10.1.0~2.7.0版本 | 增量数据同步 | 单向同步 | 从PolarDB PostgreSQL版(兼容Oracle)集群同步至自建Kafka | |
云原生数据仓库AnalyticDB MySQL版 3.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | PolarDB PostgreSQL版(兼容Oracle)集群同步至AnalyticDB MySQL 3.0 |
源为Oracle的同步方案
- 仅支持在新版控制台配置。
- 目标库的PolarDB-X 2.0需兼容MySQL 5.7版本,且建议实例版本升级为5.4.11及以上,升级方式请参见查看和升级实例版本。
源库 | 目标库 | 同步类型 | 同步拓扑 | 配置文档 |
---|---|---|---|---|
自建Oracle(RAC或非RAC架构) 9i、10g、11g、12c、18c、19c版本 | 云原生数据仓库AnalyticDB PostgreSQL版 4.3、6.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 自建Oracle同步至云原生数据仓库AnalyticDB PostgreSQL版 |
DataHub | 库表结构同步 增量数据同步 | 单向同步 | 自建Oracle同步至DataHub | |
PolarDB-X 2.0 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 自建Oracle同步至PolarDB-X 2.0 | |
MaxCompute | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 文档准备中 | |
PolarDB PostgreSQL版(兼容Oracle) | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 文档准备中 | |
阿里云消息队列Kafka版 0.10.1.0~2.x版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 自建Oracle同步至阿里云消息队列Kafka版 |
源为自建PostgreSQL或RDS PostgreSQL的同步方案
源库 | 目标库 | 同步类型 | 同步拓扑 | 配置文档 |
---|---|---|---|---|
|
| 库表结构同步 全量数据同步 增量数据同步 | 单向同步 双向同步 | |
PolarDB PostgreSQL版 11版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 双向同步 | RDS PostgreSQL同步至PolarDB PostgreSQL版 | |
云原生数据仓库AnalyticDB PostgreSQL版 4.3、6.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | ||
| 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | RDS PostgreSQL同步至RDS MySQL | |
PolarDB PostgreSQL版(兼容Oracle) | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 自建PostgreSQL同步至PolarDB PostgreSQL版(兼容Oracle) |
源为自建SQL Server或RDS SQL Server的同步方案
- 源库支持的自建SQL Server需为Enterprise、Developer、Enterprise Evaluation版本。
- 目标库支持的自建SQL Server需为Enterprise、Developer、Enterprise Evaluation、Standard版本。
- 在混合式日志解析模式下(即SQLServer增量同步模式为非堆表用日志解析增量同步,堆表用CDC增量同步的实例),支持的源库(包含RDS SQL Server和自建SQL Server)有:
- Enterprise或Enterprise Evaluation版:2012、2014、2016或2019版本。
- Standard版:2016或者2019版本。
源库 | 目标库 | 同步类型 | 同步拓扑 | 配置文档 |
---|---|---|---|---|
|
| 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | RDS SQL Server间的同步 |
| 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | RDS SQL Server同步至RDS MySQL | |
PolarDB MySQL版 所有版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 自建SQL Server同步至PolarDB MySQL版 | |
云原生数据仓库AnalyticDB MySQL版 3.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | RDS SQL Server同步至AnalyticDB MySQL版 3.0 | |
云原生数据仓库AnalyticDB PostgreSQL版 4.3、6.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 自建SQL Server同步至AnalyticDB PostgreSQL | |
DataHub | 库表结构同步 增量数据同步 | 单向同步 | RDS SQL Server同步至DataHub |
源为RDS MariaDB的同步方案
源库 | 目标库 | 同步类型 | 同步拓扑 | 配置文档 |
---|---|---|---|---|
RDS MariaDB | RDS MariaDB | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 文档准备中 |
RDS MySQL | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 文档准备中 | |
RDS PostgreSQL 9.4、10、11、12、13、14、15版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 文档准备中 |
源为自建MongoDB或云数据库MongoDB的同步方案
源库 | 目标库 | 同步类型 | 同步拓扑 | 配置文档 |
---|---|---|---|---|
|
| 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 云数据库MongoDB版(副本集架构)同步至云数据库MongoDB版(副本集架构或分片集群架构) |
云数据库MongoDB(分片集群架构) 3.4、4.0、4.2、4.4、5.0版本 | 云数据库MongoDB(分片集群架构) 3.4、4.0、4.2、4.4、5.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 双向同步 | |
云数据库MongoDB(副本集架构) 3.4、4.0、4.2、4.4、5.0版本 | 云数据库MongoDB(副本集架构) 3.4、4.0、4.2、4.4、5.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 双向同步 | 云数据库MongoDB版(副本集架构)间的双向同步 |
源为自建Redis或云数据库Tair/Redis的同步方案
- Redis属于NoSQL数据库,无需库表结构同步。
- 源库不支持存储介质为云盘(ESSD)的Tair(云盘版)实例。
- 仅支持本地盘的Redis企业版(Tair)实例、存储介质为内存Tair(云盘版)实例、存储介质为持久内存的Tair(云盘版)实例间的双向同步。
- 源库为自建Redis或云数据库Redis社区版实例时,支持全量数据同步和增量数据同步,合并显示为增量同步。
源库 | 目标库 | 同步类型 | 同步拓扑 | 配置文档 |
---|---|---|---|---|
|
| 全量数据同步 增量数据同步 | 单向同步 双向同步 |
源为TiDB的同步方案
源库 | 目标库 | 同步类型 | 同步拓扑 | 配置文档 |
---|---|---|---|---|
TiDB | 云原生数据仓库AnalyticDB MySQL版 2.0、3.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 从自建TiDB同步至云原生数据仓库AnalyticDB MySQL |
源为Db2 for LUW的同步方案
- Db2 for LUW在控制台显示为DB2 LUW。
- 目标库的PolarDB-X 2.0需兼容MySQL 5.7版本,且建议实例版本升级为5.4.11及以上,升级方式请参见查看和升级实例版本。
源库 | 目标库 | 同步类型 | 同步拓扑 | 配置文档 |
---|---|---|---|---|
Db2 for LUW 9.5、9.7、10.1、10.5、11.1、11.5版本 |
| 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | Db2 for LUW同步至RDS MySQL |
云原生数据仓库AnalyticDB MySQL版 3.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | Db2 for LUW同步至AnalyticDB MySQL版 3.0 | |
PolarDB MySQL版 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | Db2 for LUW同步至PolarDB MySQL版 | |
PolarDB-X 2.0 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | Db2 for LUW同步至PolarDB-X 2.0 | |
云原生数据仓库AnalyticDB PostgreSQL版 4.3、6.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | Db2 for LUW同步至AnalyticDB PostgreSQL | |
阿里云消息队列Kafka版 0.10.1.0~2.x版本 自建Kafka 0.10.1.0~2.7.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | Db2 for LUW同步至自建Kafka集群 | |
| 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 文档准备中 | |
PolarDB PostgreSQL版 11版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 文档准备中 |
源为Db2 for i(AS/400)的同步方案
源库 | 目标库 | 同步类型 | 同步拓扑 | 配置文档 |
---|---|---|---|---|
Db2 for i 7.3、7.4版本 |
| 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 文档准备中 |
PolarDB MySQL版 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 文档准备中 |
源为数据管理DMS逻辑库的同步方案
源库 | 目标库 | 同步类型 | 同步拓扑 | 配置文档 |
---|---|---|---|---|
数据管理DMS逻辑库 | 云原生数据仓库AnalyticDB MySQL版 3.0版本 | 库表结构同步 全量数据同步 增量数据同步 | 单向同步 | 数据管理DMS逻辑库同步至云原生数据仓库AnalyticDB MySQL 3.0 |