实时同步
实时同步是指在不同的系统之间,将数据通过同步技术从一个数据源拷贝到其他数据库,并保持一致,实现关键业务的数据实时流动。实时同步不同于迁移,迁移是以整体数据库搬迁为目的,而实时同步是维持不同业务之间的数据持续性流动。
目前部分功能仅支持白名单用户使用,需要提交工单申请才能使用。您可以在管理控制台右上角,选择“工单 > 新建工单”,完成工单提交。
支持的数据库类型
实时同步支持的数据库、版本和同步模式可参考支持的数据库。
支持的网络方式
数据复制服务提供的实时同步功能支持通过多种网络方式进行实时同步,包括:VPC网络、VPN网络、专线网络和公网网络,在正式进行实时同步之前请参考表1了解网络类型的使用场景及准备工作,并参考表2了解具体的网络类型支持情况完成网络设置。
网络类型 |
使用场景 |
准备工作 |
---|---|---|
VPC网络 |
适合云上同区域数据库之间的同步。 |
|
VPN网络 |
适合通过VPN网络,实现其他云下自建数据库与云上数据库之间的实时同步、或云上跨Region的数据库之间的实时同步。 |
用户需要确保本地数据中心和目标数据库所在VPC的VPN网络建立连接,确保VPN网络可正常访问的前提下,再进行数据同步。 VPN相关操作,请参见《虚拟专用网络快速入门》。 |
专线网络 |
适合通过专线网络,实现其他云下自建数据库与云上数据库之间的实时同步、或云上跨Region的数据库之间的实时同步。 |
用户需要通过专线网络建立云与数据中心的专线连接。 云专线相关操作,请参见《云专线快速入门》。 |
公网网络 |
适合通过公网网络把其他云下或其他平台的数据库同步到目标数据库。 |
为了确保源数据库和目标数据库之间的网络互通,源数据库端和目标数据库端分别需要进行如下设置: |
同步方向 |
源数据库 |
目标数据库 |
VPC网络 |
公网网络 |
VPN、专线网络 |
---|---|---|---|---|---|
入云 |
MySQL |
MySQL |
支持 |
支持 |
支持 |
PostgreSQL |
支持 |
支持 |
支持 |
||
GaussDB分布式版 |
支持 |
支持 |
支持 |
||
GaussDB主备版 |
支持 |
支持 |
支持 |
||
GaussDB(for MySQL) |
支持 |
支持 |
支持 |
||
GaussDB(DWS) |
支持 |
支持 |
支持 |
||
MariaDB |
支持 |
支持 |
支持 |
||
PostgreSQL |
PostgreSQL |
支持 |
支持 |
支持 |
|
GaussDB(DWS) |
支持 |
支持 |
支持 |
||
GaussDB主备版 |
支持 |
支持 |
支持 |
||
GaussDB分布式版 |
支持 |
支持 |
支持 |
||
DDM |
MySQL |
支持 |
支持 |
支持 |
|
GaussDB(DWS) |
支持 |
支持 |
支持 |
||
DDM |
支持 |
支持 |
支持 |
||
Oracle |
MySQL |
支持 |
支持 |
支持 |
|
DDM |
支持 |
支持 |
支持 |
||
GaussDB(DWS) |
支持 |
支持 |
支持 |
||
PostgreSQL |
支持 |
支持 |
支持 |
||
GaussDB(for MySQL) |
支持 |
支持 |
支持 |
||
GaussDB主备版 |
支持 |
支持 |
支持 |
||
GaussDB分布式版 |
支持 |
支持 |
支持 |
||
DB2 for LUW |
GaussDB主备版 |
支持 |
支持 |
支持 |
|
GaussDB分布式版 |
支持 |
支持 |
支持 |
||
GaussDB(DWS) |
支持 |
支持 |
支持 |
||
TiDB |
GaussDB(for MySQL) |
不支持 |
支持 |
支持 |
|
Microsoft SQL Server |
GaussDB(DWS) |
支持 |
支持 |
支持 |
|
GaussDB主备版 |
支持 |
支持 |
支持 |
||
GaussDB分布式版 |
支持 |
支持 |
支持 |
||
Microsoft SQL Server |
支持 |
支持 |
支持 |
||
MySQL
说明:
目前仅支持白名单用户使用。 |
支持 |
支持 |
支持 |
||
GaussDB(for MySQL)
说明:
目前仅支持白名单用户使用。 |
支持 |
支持 |
支持 |
||
PostgreSQL
说明:
目前仅支持白名单用户使用。 |
支持 |
支持 |
支持 |
||
MongoDB |
DDS |
支持 |
支持 |
支持 |
|
GaussDB(for MySQL) |
GaussDB(for MySQL) |
支持 |
支持 |
支持 |
|
MariaDB |
MariaDB |
支持 |
支持 |
支持 |
|
MySQL |
支持 |
支持 |
支持 |
||
GaussDB(for MySQL) |
支持 |
支持 |
支持 |
||
Dynamo |
GeminiDB Dynamo
说明:
目前仅支持白名单用户使用。 |
暂不支持 |
支持 |
支持 |
|
Cassandra |
GeminiDB Cassandra |
支持 |
支持 |
支持 |
|
出云 |
MySQL |
MySQL |
支持 |
支持 |
支持 |
Kafka |
支持 |
支持 |
支持 |
||
CSS/ES |
支持 |
支持 |
支持 |
||
Oracle |
支持 |
支持 |
支持 |
||
MariaDB |
支持 |
支持 |
支持 |
||
DDM |
MySQL |
支持 |
支持 |
支持 |
|
Oracle |
支持 |
支持 |
支持 |
||
Kafka |
支持 |
支持 |
支持 |
||
DDS |
MongoDB |
支持 |
支持 |
支持 |
|
Kafka |
支持 |
支持 |
支持 |
||
PostgreSQL |
PostgreSQL |
支持 |
支持 |
支持 |
|
Kafka |
暂不支持 |
支持 |
支持 |
||
GaussDB主备 |
MySQL |
暂不支持 |
支持 |
支持 |
|
Oracle |
暂不支持 |
支持 |
支持 |
||
Kafka |
支持 |
支持 |
支持 |
||
GaussDB(DWS) |
暂不支持 |
支持 |
支持 |
||
GaussDB分布式版 |
支持 |
支持 |
支持 |
||
GaussDB主备版 |
支持 |
支持 |
支持 |
||
GaussDB分布式版 |
MySQL |
暂不支持 |
支持 |
支持 |
|
Oracle |
暂不支持 |
支持 |
支持 |
||
GaussDB(DWS) |
暂不支持 |
支持 |
支持 |
||
Kafka |
支持 |
支持 |
支持 |
||
GaussDB分布式版 |
支持 |
支持 |
支持 |
||
GaussDB主备版 |
支持 |
支持 |
支持 |
||
GaussDB(for MySQL) |
MySQL |
支持 |
支持 |
支持 |
|
GaussDB(DWS) |
支持 |
支持 |
支持 |
||
Kafka |
支持 |
支持 |
支持 |
||
CSS/ES |
支持 |
支持 |
支持 |
||
Oracle |
支持 |
支持 |
支持 |
||
MariaDB |
MariaDB |
支持 |
支持 |
支持 |
|
Microsoft SQL Server |
Kafka
说明:
目前仅支持白名单用户使用。 |
支持 |
支持 |
支持 |
|
自建-自建 |
MySQL |
Kafka |
支持 |
支持 |
支持 |
CSS/ES |
支持 |
支持 |
支持 |
||
GaussDB主备版 |
暂不支持 |
支持 |
支持 |
||
GaussDB分布式版 |
暂不支持 |
支持 |
支持 |
||
Oracle |
Kafka |
支持 |
支持 |
支持 |
|
GaussDB主备版 |
暂不支持 |
支持 |
支持 |
||
GaussDB分布式版 |
暂不支持 |
支持 |
支持 |
||
PostgreSQL |
Kafka |
暂不支持 |
支持 |
支持 |
|
GaussDB主备版 |
MySQL |
暂不支持 |
支持 |
支持 |
|
Oracle |
暂不支持 |
支持 |
支持 |
||
Kafka |
支持 |
支持 |
支持 |
||
GaussDB主备版 |
支持 |
支持 |
支持 |
||
GaussDB分布式版 |
支持 |
支持 |
支持 |
||
GaussDB分布式版 |
MySQL |
暂不支持 |
支持 |
支持 |
|
Oracle |
暂不支持 |
支持 |
支持 |
||
Kafka |
支持 |
支持 |
支持 |
||
GaussDB分布式版 |
支持 |
支持 |
支持 |
||
GaussDB主备版 |
支持 |
支持 |
支持 |
||
DB2 for LUW |
GaussDB主备版 |
暂不支持 |
支持 |
支持 |
|
GaussDB分布式版 |
暂不支持 |
支持 |
支持 |
||
Microsoft SQL Server |
Kafka
说明:
目前仅支持白名单用户使用。 |
支持 |
支持 |
支持 |
支持的同步对象
数据复制服务提供的实时同步任务支持不同对象的选择,支持情况如下表。
同步方向 |
源数据库 |
目标数据库 |
表级同步 |
库级同步 |
导入对象文件 |
---|---|---|---|---|---|
入云 |
MySQL |
MySQL |
支持 |
支持 |
支持 |
PostgreSQL |
支持 |
支持 |
支持 |
||
GaussDB分布式版 |
支持 |
暂不支持 |
支持 |
||
GaussDB主备版 |
支持 |
暂不支持 |
支持 |
||
GaussDB(for MySQL) |
支持 |
支持 |
支持 |
||
GaussDB(DWS) |
支持 |
支持 |
支持 |
||
MariaDB |
支持 |
支持 |
支持 |
||
PostgreSQL |
PostgreSQL |
支持 |
支持 |
支持 |
|
GaussDB(DWS) |
支持 |
支持 |
暂不支持 |
||
GaussDB主备版 |
支持 |
暂不支持 |
支持 |
||
GaussDB分布式版 |
支持 |
暂不支持 |
支持 |
||
DDM |
MySQL |
支持 |
暂不支持 |
暂不支持 |
|
GaussDB(DWS) |
支持 |
支持 |
暂不支持 |
||
DDM |
支持 |
支持 |
暂不支持 |
||
Oracle |
MySQL |
支持 |
暂不支持 |
支持 |
|
DDM |
支持 |
暂不支持 |
暂不支持 |
||
GaussDB(DWS) |
支持 |
暂不支持 |
支持 |
||
PostgreSQL |
支持 |
暂不支持 |
支持 |
||
GaussDB(for MySQL) |
支持 |
暂不支持 |
支持 |
||
GaussDB主备版 |
支持 |
暂不支持 |
支持 |
||
GaussDB分布式版 |
支持 |
暂不支持 |
支持 |
||
DB2 for LUW |
GaussDB主备版 |
支持 |
暂不支持 |
支持 |
|
GaussDB分布式版 |
支持 |
暂不支持 |
支持 |
||
GaussDB(DWS) |
支持 |
暂不支持 |
支持 |
||
TiDB |
GaussDB(for MySQL) |
支持 |
支持 |
暂不支持 |
|
Microsoft SQL Server |
GaussDB(DWS) |
支持 |
暂不支持 |
暂不支持 |
|
GaussDB主备版 |
支持 |
暂不支持 |
暂不支持 |
||
GaussDB分布式版 |
支持 |
暂不支持 |
暂不支持 |
||
Microsoft SQL Server |
支持 |
暂不支持 |
暂不支持 |
||
MySQL
说明:
目前仅支持白名单用户使用。 |
支持 |
暂不支持 |
支持 |
||
GaussDB(for MySQL)
说明:
目前仅支持白名单用户使用。 |
支持 |
暂不支持 |
支持 |
||
PostgreSQL
说明:
目前仅支持白名单用户使用。 |
支持 |
暂不支持 |
支持 |
||
MongoDB |
DDS |
支持 |
支持 |
暂不支持 |
|
GaussDB(for MySQL) |
GaussDB(for MySQL) |
支持 |
支持 |
支持 |
|
MariaDB |
MariaDB |
支持 |
支持 |
支持 |
|
MySQL |
支持 |
支持 |
支持 |
||
GaussDB(for MySQL) |
支持 |
支持 |
支持 |
||
Dynamo |
GeminiDB Dynamo
说明:
目前仅支持白名单用户使用。 |
支持 |
暂不支持 |
暂不支持 |
|
Cassandra |
GeminiDB Cassandra |
支持 |
暂不支持 |
支持 |
|
出云 |
MySQL |
MySQL |
支持 |
支持 |
暂不支持 |
Kafka |
支持 |
支持 |
支持 |
||
CSS/ES |
支持 |
暂不支持 |
支持 |
||
Oracle |
支持 |
暂不支持 |
支持 |
||
MariaDB |
支持 |
支持 |
支持 |
||
DDM |
MySQL |
支持 |
暂不支持 |
暂不支持 |
|
Oracle |
支持 |
支持 |
暂不支持 |
||
Kafka |
支持 |
支持 |
暂不支持 |
||
DDS |
MongoDB |
支持 |
支持 |
暂不支持 |
|
Kafka |
支持 |
支持 |
暂不支持 |
||
PostgreSQL |
PostgreSQL |
支持 |
支持 |
支持 |
|
Kafka |
支持 |
支持 |
暂不支持 |
||
GaussDB主备版 |
MySQL |
支持 |
暂不支持 |
暂不支持 |
|
Oracle |
支持 |
暂不支持 |
支持 |
||
Kafka |
支持 |
支持 |
暂不支持 |
||
GaussDB(DWS) |
支持 |
暂不支持 |
暂不支持 |
||
GaussDB分布式版 |
支持 |
暂不支持 |
支持 |
||
GaussDB主备版 |
支持 |
暂不支持 |
支持 |
||
GaussDB分布式版 |
MySQL |
支持 |
暂不支持 |
暂不支持 |
|
Oracle |
支持 |
暂不支持 |
支持 |
||
GaussDB(DWS) |
支持 |
暂不支持 |
暂不支持 |
||
Kafka |
支持 |
支持 |
暂不支持 |
||
GaussDB分布式版 |
支持 |
暂不支持 |
支持 |
||
GaussDB主备版 |
支持 |
暂不支持 |
支持 |
||
GaussDB(for MySQL) |
MySQL |
支持 |
支持 |
支持 |
|
GaussDB(DWS) |
支持 |
支持 |
支持 |
||
Kafka |
支持 |
支持 |
支持 |
||
CSS/ES |
支持 |
支持 |
暂不支持 |
||
Oracle |
支持 |
暂不支持 |
支持 |
||
MariaDB |
MariaDB |
支持 |
支持 |
支持 |
|
Microsoft SQL Server |
Kafka
说明:
目前仅支持白名单用户使用。 |
支持 |
暂不支持 |
支持 |
|
自建-自建 |
MySQL |
Kafka |
支持 |
支持 |
支持 |
CSS/ES |
支持 |
暂不支持 |
支持 |
||
GaussDB主备版 |
支持 |
暂不支持 |
支持 |
||
GaussDB分布式版 |
支持 |
暂不支持 |
支持 |
||
Oracle |
Kafka |
支持 |
暂不支持 |
支持 |
|
GaussDB主备版 |
支持 |
暂不支持 |
支持 |
||
GaussDB分布式版 |
支持 |
暂不支持 |
支持 |
||
GaussDB主备版 |
MySQL |
支持 |
暂不支持 |
暂不支持 |
|
Oracle |
支持 |
暂不支持 |
支持 |
||
Kafka |
支持 |
支持 |
暂不支持 |
||
GaussDB主备版 |
支持 |
暂不支持 |
支持 |
||
GaussDB分布式版 |
支持 |
暂不支持 |
支持 |
||
GaussDB分布式版 |
MySQL |
支持 |
暂不支持 |
暂不支持 |
|
Oracle |
支持 |
暂不支持 |
支持 |
||
Kafka |
支持 |
支持 |
暂不支持 |
||
GaussDB分布式版 |
支持 |
暂不支持 |
支持 |
||
GaussDB主备版 |
支持 |
暂不支持 |
支持 |
||
PostgreSQL |
Kafka |
支持 |
支持 |
暂不支持 |
|
DB2 for LUW |
GaussDB主备版 |
支持 |
暂不支持 |
支持 |
|
GaussDB分布式版 |
支持 |
暂不支持 |
支持 |
||
Microsoft SQL Server |
Kafka
说明:
目前仅支持白名单用户使用。 |
支持 |
暂不支持 |
支持 |
支持的高级特性
数据复制服务提供的实时同步任务支持多种特性,有效的帮助您提高实时同步的成功率。
特性 |
说明 |
---|---|
同步级别 |
数据复制服务提供的实时同步功能支持库级同步和表级同步。
|
对象名映射 |
实时同步功能可以支持源数据库和目标数据库中的同步对象(包括数据库、schema、表或列)的名称不同。如果同步的数据库对象在源数据库和目标数据库中的命名不同,那么可以使用数据复制服务提供的对象名映射功能进行映射。 目前数据复制服务提供的映射功能支持库映射、schema映射和表映射。 |
动态增减同步对象 |
在实时同步过程中,您可以通过编辑同步对象随时增加或减少需要同步的对象。 |
冲突处理 |
数据复制服务提供的实时同步功能使用了主键或唯一键冲突策略,这些策略可以由您自主选择,尽可能保证源数据库中有主键约束或唯一键约束的表同步到目标数据库是符合预期的。 目前支持的冲突策略有: 忽略和覆盖,都是以同步稳定性优先(不会因为数据冲突而中断任务),如果用户以同步稳定性为关键,则在这里二选一。 报错则是以数据质量为优先,即用户环境不应该出现任何数据冲突,无论是忽略还是覆盖都可能产生严重业务问题,所以DRS同步任务立即失败,并人为排查原因。但需注意,如果任务长期处于失败状态,可能会导致存储占满而无法修复任务。 |
数据结构同步能力 |
数据复制服务提供的实时同步功能不支持单独的数据结构同步,而是提供特殊的数据结构同步机制,在同步任务启动后,将数据和结构一并同步到目标数据库。 |