达梦数据复制软件(简称DMDRS)是一种用于同构数据库、异构数据库以及各种数据管理系统之间的数据复制软件。DMDRS采用模块化的设计,通过灵活配置不同的功能模块,实现多功能的数据复制服务,以满足多种场景下的数据复制业务需求。
基于数据复制业务的应用场景,DMDRS提供数据迁移、数据同步、数据订阅、数据分发和数据转换等功能,而且数据同步功能还支持一对一、双向、一对多、多对一、级联同步、环形同步和DMDRS主备等多种同步拓扑结构。
数据迁移
数据迁移是指将源数据库的全量数据一次性迁移到目标数据库,适用于同构或异构数据库之间的数据迁移,一般用于源数据库在静态的情况下进行数据迁移的场景。数据迁移提供稳定、高效的数据库全量数据迁移,并且支持故障以后进行断点续传的功能。
数据同步
数据同步是指通过全量数据装载和增量数据同步的组合来实现数据复制功能,实现源数据库在动态的场景下和目标数据库数据的一致性,适用于同构或异构数据库之间的数据实时同步。
全量数据装载是指将源数据库的全量数据装载到目标数据库,使源数据库和目标数据库数据保持一致。
增量数据同步是指通过数据同步技术将源数据库的增量数据实时同步到目标数据库,保证源数据库和目标数据库增量数据的一致性。
在同构数据库的场景下,支持将源数据库的同步或异步备份还原到目标数据库后,再通过DMDRS的增量数据同步功能实现源数据库和目标数据库增量数据的实时同步。
数据分发
数据分发是指将源数据库的全量数据和增量数据先保
1 产品简介
达梦数据复制软件(简称DMDRS)是一种用于同构数据库、异构数据库以及各种数据管理系统之间的数据复制软件。DMDRS采用模块化的设计,通过灵活配置不同的功能模块,实现多功能的数据复制服务,以满足多种场景下的数据复制业务需求。
基于数据复制业务的应用场景,DMDRS提供数据迁移、数据同步、数据订阅、数据分发和数据转换等功能,而且数据同步功能还支持一对一、双向、一对多、多对一、级联同步、环形同步和DMDRS主备等多种同步拓扑结构。
数据迁移
数据迁移是指将源数据库的全量数据一次性迁移到目标数据库,适用于同构或异构数据库之间的数据迁移,一般用于源数据库在静态的情况下进行数据迁移的场景。数据迁移提供稳定、高效的数据库全量数据迁移,并且支持故障以后进行断点续传的功能。
数据同步
数据同步是指通过全量数据装载和增量数据同步的组合来实现数据复制功能,实现源数据库在动态的场景下和目标数据库数据的一致性,适用于同构或异构数据库之间的数据实时同步。
全量数据装载是指将源数据库的全量数据装载到目标数据库,使源数据库和目标数据库数据保持一致。
增量数据同步是指通过数据同步技术将源数据库的增量数据实时同步到目标数据库,保证源数据库和目标数据库增量数据的一致性。
在同构数据库的场景下,支持将源数据库的同步或异步备份还原到目标数据库后,再通过DMDRS的增量数据同步功能实现源数据库和目标数据库增量数据的实时同步。
数据分发
数据分发是指将源数据库的全量数据和增量数据先保存到流存储后再分发到目标端,一般适用于将一个数据库的数据复制到多个数据库的应用场景。一般用于大规模数据量的数据传输,可以有效降低源数据库服务器负载,减少对源数据库系统的影响。
数据订阅
数据订阅是指将源数据库的全量数据和增量数据进行整合后保存到流存储,第三方应用程序可以通过DMDRS提供的API接口按需订阅源数据库的增量变化数据。
数据转换
数据转换是指对数据库的全量数据和增量数据进行自定义转换,数据转换功能可用于数据迁移、数据同步、数据分发和数据订阅等场景,满足多样化的数据转化需求。
2 产品兼容
2.1 支持的软硬件平台
DMDRS支持各种主流的软硬件平台,如龙芯、飞腾、鲲鹏、海光、兆芯、申威、宏芯、X86和ARM等处理器以及麒麟、UOS、凝思、Red Hat、Ubuntu、Solaris、AIX和Windows等操作系统。
2.2 支持的数据库
DMDRS支持多种同构数据库、异构数据库之间或者数据库与其他数据管理系统之间的数据复制,数据迁移、数据同步、数据订阅、数据分发和数据转换场景支持的数据库如下所示。
说明
- DMDRS支持的源数据库:DM7单机、DM8(单机、DSC)、Oracle 10g及以上版本(单机、RAC)、Microsoft SQL Server 2008及以上版本、DB2 10.5和MySQL 5.6及以上版本。
- DMDRS支持的目标数据库:DM7单机、DM8(单机、DSC)、Oracle 10g及以上版本(单机、RAC)、Microsoft SQL Server 2008及以上版本、MySQL 5.6及以上版本、Kafka 0.8.2及以上版本和PostgreSQL 11版本。
数据迁移
数据迁移支持同构或异构数据库之间数据库对象的迁移。数据迁移支持的源数据库、目标数据库以及迁移对象如下表所示。
| 源数据库类型 | 源数据库版本 | 目标数据库类型和版本 | 迁移对象 |
|---|---|---|---|
| DM | DM7单机 DM8(单机、DSC) | DM7单机 | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词、自定义类型、类 |
| DM8(单机、DSC) | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词、自定义类型、类 | ||
| Oracle 10g及以上版本(单机、RAC) | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词 | ||
| Microsoft SQL Server 2008及以上版本 | 表、索引、主键、外键、约束、注释 | ||
| MySQL 5.6及以上版本 | 表、索引、主键、外键、约束、注释、视图 | ||
| Kafka 0.8.2及以上版本 | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词、自定义类型、类 | ||
| PostgreSQL 11版本 | 表、索引、主键、外键、约束、注释 | ||
| Oracle | Oracle 10g及以上版本(单机、RAC) | DM7单机 | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词 |
| DM8(单机、DSC) | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词 | ||
| Oracle 10g及以上版本(单机、RAC) | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词 | ||
| Microsoft SQL Server 2008及以上版本 | 表、索引、主键、外键、约束、注释 | ||
| MySQL 5.6及以上版本 | 表、索引、主键、外键、约束、注释、视图 | ||
| Kafka 0.8.2及以上版本 | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词 | ||
| SQL Server | Microsoft SQL Server 2008及以上版本 | DM7单机 | 表、索引、序列、主键、外键、约束、注释 |
| DM8(单机、DSC) | 表、索引、序列、主键、外键、约束、注释 | ||
| Oracle 10g及以上版本(单机、RAC) | 表、索引、序列、主键、外键、约束、注释 | ||
| Microsoft SQL Server 2008及以上版本 | 表、索引、序列、主键、外键、约束、注释 | ||
| MySQL 5.6及以上版本 | 表、索引、序列、主键、外键、约束、注释 | ||
| Kafka 0.8.2及以上版本 | 表、索引、序列、主键、外键、约束、注释 | ||
| MySQL | MySQL 5.6及以上版本 | DM7单机 | 表、索引、主键、外键、约束、注释 |
| DM8(单机、DSC) | 表、索引、主键、外键、约束、注释 | ||
| Oracle 10g及以上版本(单机、RAC) | 表、索引、主键、外键、约束、注释 | ||
| Microsoft SQL Server 2008及以上版本 | 表、索引、主键、外键、约束、注释 | ||
| MySQL 5.6及以上版本 | 表、索引、主键、外键、约束、注释 | ||
| Kafka 0.8.2及以上版本 | 表、索引、主键、外键、约束、注释 | ||
| DB2 | DB2 10.5 | DM8单机 | 表、索引、主键、外键、约束 |
| Kafka 0.8.2及以上版本 | 表、索引、主键、外键、约束 |
数据同步
数据同步支持同构或异构数据库之间的数据同步,包含全量数据装载和增量数据同步同时进行的方式。数据同步支持的源数据库、目标数据库、装载对象以及同步操作如下表所示。
| 源数据库类型 | 源数据库版本 | 目标数据库类型和版本 | 装载对象 | 同步操作 |
|---|---|---|---|---|
| DM | DM7单机 DM8(单机、DSC) | DM7单机 | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词、自定义类型、类 | DML、DDL |
| DM8(单机、DSC) | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词、自定义类型、类 | DML、DDL | ||
| Oracle 10g及以上版本(单机、RAC) | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词 | DML、DDL | ||
| Microsoft SQL Server 2008及以上版本 | 表、索引、主键、外键、约束、注释 | DML、DDL | ||
| MySQL 5.6及以上版本 | 表、索引、主键、外键、约束、注释、视图 | DML、DDL | ||
| Kafka 0.8.2及以上版本 | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词、自定义类型、类 | DML、DDL | ||
| PostgreSQL 11版本 | 表、索引、主键、外键、约束、注释 | DML、DDL | ||
| Oralce | Oracle 10g及以上版本(单机、RAC) | DM7单机 | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词 | DML、DDL |
| DM8(单机、DSC) | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词 | DML、DDL | ||
| Oracle 10g及以上版本(单机、RAC) | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词 | DML、DDL | ||
| Microsoft SQL Server 2008及以上版本 | 表、索引、主键、外键、约束、注释 | DML、DDL | ||
| MySQL 5.6及以上版本 | 表、索引、主键、外键、约束、注释、视图 | DML、DDL | ||
| Kafka 0.8.2及以上版本 | 表、索引、序列、主键、外键、约束、注释、视图、触发器、函数、存储过程、包、同义词 | DML、DDL | ||
| SQL Server | Microsoft SQL Server 2008及以上版本 | DM7单机 | 表、索引、主键、外键、约束、注释 | DML |
| DM8(单机、DSC) | 表、索引、主键、外键、约束、注释 | DML | ||
| Oracle 10g及以上版本(单机、RAC) | 表、索引、主键、外键、约束、注释 | DML | ||
| Microsoft SQL Server 2008及以上版本 | 表、索引、主键、外键、约束、注释 | DML | ||
| MySQL 5.6及以上版本 | 表、索引、主键、外键、约束、注释 | DML | ||
| Kafka 0.8.2及以上版本 | 表、索引、主键、外键、约束、注释 | DML | ||
| MySQL | MySQL 5.6及以上版本 | DM7单机 | 表、索引、主键、外键、约束、注释 | DML、DDL |
| DM8(单机、DSC) | 表、索引、主键、外键、约束、注释 | DML、DDL | ||
| Oracle 10g及以上版本(单机、RAC) | 表、索引、主键、外键、约束、注释 | DML、DDL | ||
| Microsoft SQL Server 2008及以上版本 | 表、索引、主键、外键、约束、注释 | DML、DDL | ||
| MySQL 5.6及以上版本 | 表、索引、主键、外键、约束、注释 | DML、DDL | ||
| Kafka 0.8.2及以上版本 | 表、索引、主键、外键、约束、注释 | DML、DDL | ||
| DB2 | DB2 10.5 | DM8单机 | 表、索引、主键、外键、约束 | DML、DDL |
| Kafka 0.8.2及以上版本 | 表、索引、主键、外键、约束 | DML、DDL |
数据订阅
数据订阅支持第三方应用程序通过API接口订阅源数据库的全量数据和增量数据。数据订阅支持订阅DML、DDL同步操作,其中DDL操作获取的是源数据库执行的DDL操作SQL语句。数据订阅支持的源数据库以及订阅操作如下表所示。
| 源数据库类型 | 源数据库版本 | 订阅操作 |
|---|---|---|
| DM | DM7单机、DM8(单机、DSC) | DML、DDL |
| Oralce | Oracle 10g及以上版本(单机、RAC) | DML、DDL |
| SQL Server | Microsoft SQL Server 2008及以上版本 | DML |
| MySQL | MySQL 5.6及以上版本 | DML、DDL |
数据分发
数据分发支持同构或异构数据库之间的全量数据和增量数据的分发。数据分发支持的源数据库以及分发数据如下表所示。
| 源数据库类型 | 源数据库版本 | 分发数据 |
|---|---|---|
| DM | DM7单机、DM8(单机、DSC) | 全量数据、增量数据 |
| Oralce | Oracle 10g及以上版本(单机、RAC) | 全量数据、增量数据 |
| SQL Server | Microsoft SQL Server 2008及以上版本 | 全量数据、增量数据 |
| MySQL | MySQL 5.6及以上版本 | 全量数据、增量数据 |
数据转换
数据转换可用于数据迁移、数据同步、数据分发和数据订阅等场景,支持对源数据库的全量数据和增量数据进行转换。支持的源数据库和目标数据库与数据迁移、数据同步、数据分发和数据订阅等场景支持的数据库一致。数据转换可以应用在源DMDRS服务或目标DMDRS服务。存到流存储后再分发到目标端,一般适用于将一个数据库的数据复制到多个数据库的应用场景。一般用于大规模数据量的数据传输,可以有效降低源数据库服务器负载,减少对源数据库系统的影响。
数据订阅
数据订阅是指将源数据库的全量数据和增量数据进行整合后保存到流存储,第三方应用程序可以通过DMDRS提供的API接口按需订阅源数据库的增量变化数据。
数据转换
数据转换是指对数据库的全量数据和增量数据进行自定义转换,数据转换功能可用于数据迁移、数据同步、数据分发和数据订阅等场景,满足多样化的数据转化需求。




