DMDRS产品概述和安装部署

一、DMDRS概述

达梦数据复制软件(DMDRS)是达梦数据库官方配套的数据复制工具,DMDRS 采用模块化的设计,通过灵活配置不同的功能模块,实现多功能的数据复制服务,以满足多种场景下的数据复制业务需求。具有以下特点和功能:

1.1产品特点

高性能:基于海量并行日志解析和执行入库、大小事务智能调度等技术,实现秒级数据实时同步复制。

高可靠性:采用模块化设计,支持多种同步拓扑结构,如一对一、双向、一对多、多对一、级联同步、环形同步和DMDRS主备等。

异构支持:支持同构和异构数据库之间的数据复制,兼容多种主流数据库。

低侵入性:采用基于日志的结构化数据复制技术,不依赖源数据库的触发器或规则,对源数据库系统几乎无影响。

1.2功能模块

数据迁移:将源数据库的全量数据一次性迁移到目标数据库,适用于静态数据迁移场景,支持断点续传。

数据同步:通过全量数据装载和增量数据同步,实现源数据库和目标数据库在动态场景下的数据一致性,支持多种同步拓扑结构。

数据分发:构建基于高性能流存储的数据分发同步服务,适用于大规模数据量的高效同步。

数据转换:对源数据库的全量和增量数据进行自定义转换,支持复杂数据结构处理。

二、安装部署

2.1创建安装目录

2.2上传 DMDRS 安装包到 opt 目录,并修改权限

chown dmdba:dinstall dmdrs_***.bin

chmod -R 755 dmdrs_***.bin

2.3配置key文件

(1)重命名key文件,方便之后使用

(2)修改 dmdrs.key 的用户及权限,并将 dmdrs.key 移动到 /home/dmdba 目录下

chown dmdba:dinstall dmdrs.key

chmod -R 755 dmdrs.key

mv dmdrs.key /home/dmdba/

2.4启动安装程序

使用 dmdba 用户启动安装文件并安装

(1)语言选中文

(2)DMDRS 默认安装在安装用户的 home 目录下,用户可自定义安装目录,本文选择已创建好的安装目录进行安装

(3)DMDRS 安装时提供 2 个组件进行选择安装,"达梦数据融合管理平台"简称 DMDFM和代理,如果 DMDFM 已在其它服务器安装,那么本服务器只需安装代理

(4)安装环境配置

(5)可指定使用外置库,默认不使用外置库,使用内置库

2.5配置服务

  1. 注册达梦数据融合管理平台服务
  2. 注册达梦数据融合管理平台代理服务
  3. 根据提示使用 root 用户执行脚本注册系统服务

三、DMDRS的使用

3.1测试数据生成

在源端创建表并插入数据

CREATE TABLE employee

(

employee_id INTEGER,

employee_name VARCHAR2(20) NOT NULL,

hire_date DATE,

salary INTEGER,

department_id INTEGER NOT NULL

);

数据生成可以利用SQLark实现

3.2目的端操作

(1)在dmdrs安装bin目录下创建exec.xml文件

vim exec.xml

(2)添加以下内容:

<?xml version="1.0" encoding="GB18030"?>

<drs>

<base>

<mgr_port>5345</mgr_port>

<siteid>2</siteid>

</base>

<exec>

<name>exec_dm8</name>

<login>

<dbtype>DM8</dbtype>

<server>192.168.160.158</server>

<user>SYSDBA</user>

<pwd>Sysdba%_025</pwd>

<port>5236</port>

</login>

</exec>

</drs>

(3)在bin目录下执行./drsvr exec.xml

3.3源端操作

(1)在dmdrs安装bin目录下创建cpt.xml文件

vim cpt.xml

(2)添加以下内容:

<?xml version="1.0" encoding="GB18030"?>

<drs>

<base>

<mgr_port>5347</mgr_port>

<siteid>100</siteid>

</base>

<cpt>

<name>cpt_dm8</name>

<login>

<dbtype>dm8</dbtype>

<server>192.168.160.157</server>

<user>SYSDBA</user>

<pwd>Sysdba%_025</pwd>

<port>5236</port>

</login>

<send>

<ip>192.168.160.158</ip>

<port>5345</port>

<target_name>exec_dm8</target_name>

<map>

<item>*.*==*.*</item>

</map>

</send>

</cpt>

</drs>

(3)在bin目录下执行./drsvr cpt.xml

3.4初始化日志文件

在源端上一步打开的CMD中输入以下命令

alter cpt_dm8 set lsn

3.5数据装载

在打开的CMD窗口执行下面的命令进行数据装载

alter cpt_dm8 add table "sch.name='SYSDBA'"

源端

目的端

(我的SYSDBA模式下有很多其他表)

3.6数据同步

装载结束后,在源端CMD执行start命令开启数据同步(之前只是把已有的数据装载到目的端,开启同步之后新数据才会同步到目的端)

3.7验证

(1)装载验证

目的端查询employee表

(2)数据同步验证

源端插入数据

目的端查询数据

社区地址:https://eco.dameng.com