达梦数据库DMDRS搭建单向dm8-dm8数据同步

目录

概述

安装步骤

安装工具

配置

系统服务

安装完成

数据同步

准备数据

建表

生成测试数据

目的端操作

创建配置文件

启动drs服务

源端操作

创建配置文件

启动drs服务

初始化日志文件

装载数据

执行数据同步

验证数据同步情况


概述

达梦数据复制软件(DMDRS)是达梦数据库官方配套数据复制工具,完美支持达梦数据库和其他主流数据库之间的数据复制。DMDRS采用日志解析技术来捕获增量数据,不依赖主机上源数据库的触发器或者CDC功能,不会入侵到源库,对源数据库系统性能影响极小。

安装步骤

准备两台linux虚拟机(本次使用的是两台centos7虚拟机),在两台虚拟机同时安装达梦数据库和DMDRS软件

将安装包存放在一个dmdba具有权限的文件夹内,使用dmdba用户执行下面的命令进行安装

复制代码
./dmdrs_rev191718_x86_rh6_64_20250619.bin -i

安装工具

选择中文语言:c

选择安装目录(默认路径直接回车)

安装的组件:1 2(中间有个空格)

确认安装:y

安装许可证文件选择免费试用或指定许可证文件

配置

依赖库设置为达梦数据库安装目录的bin目录(本次设置为/home/dmdba/dmdbms/bin)

代理环境设置为本机IP地址

代理端口和管理平台端口默认回车即可

输入密码与确认密码

不使用外置库

系统服务

1、内置数据库

注册内置数据库系统服务,服务器发生重启后内置数据库自动重启。

2、达梦数据融合管理平台

注册内置数据库系统服务,服务器发生重启后达梦数据融合管理平台自动重启。

3、达梦数据融合管理平台代理服务

注册内置数据库系统服务,服务器发生重启后达梦数据融合管理平台代理自动重启。

4、注册服务

根据提示使用 root 用户执行脚本注册系统服务。

安装完成

数据同步

准备数据

建表

在源端SYSDBA模式下新建一张测试表,字段如下:

create table EMPLOYEES

(

EMPLOYEEID INT not null, //非空 主键,自增列

NATIONALNO VARCHAR(18) not null, //非空 身份证号码

PERSONID INT not null, //非空 指向 PERSON.PERSONID 的外键

LOGINID VARCHAR(256) not null, //非空 用户登录 ID

TITLE VARCHAR(50) not null,// 非空 职位

MANAGERID INT, //空

BIRTHDATE DATE not null, //非空 出生日期

MARITALSTATUS CHAR(1) not null,// 非空 S=未婚 M=已婚

PHOTO IMAGE,// 空 照片

HAIRDATE DATE not null, //非空 入职时间

SALARY DEC(19,4) not null

);

生成测试数据

利用sqlark工具生成1000条测试数据(本次操作由于没有截图,采用之前生成10000条数据的截图,内容是一样的)

目的端操作

创建配置文件

在dmdrs安装目录下创建exec.xml文件

复制代码
vim exec.xml

添加下面的内容

复制代码
<?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.100.16</server>
            <user>DRS</user>
            <pwd>DRS123456</pwd>
            <port>5236</port>
        </login>        
    </exec>
</drs>

启动drs服务

在drs安装目录下bin路径执行下面的命令

复制代码
./drsvr exec.xml

源端操作

创建配置文件

在dmdrs安装目录下创建cpt.xml文件

复制代码
vim cpt.xml

添加下面的内容

复制代码
<?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.153.130</server>
            <user>SYSDBA</user>
            <pwd>DMwzy6870</pwd>
            <port>5236</port>
        </login>
        <send>
            <ip>192.168.153.131</ip>
            <port>5347</port>
            <target_name>exec_dm8</target_name>
            <map>
                <item>*.*==*.*</item>
            </map>
        </send>
    </cpt>
</drs>

启动drs服务

在drs安装目录下bin路径执行下面的命令

复制代码
./drsvr cpt.xml

初始化日志文件

在源端打开的CMD命令行中执行下面的命令

复制代码
alter cpt_dm8 set lsn

装载数据

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

复制代码
alter cpt_dm8 add table "sch.name='SYSDBA'"

源端显示情况:

目的端现实情况:

执行数据同步

装载结束后,在源端执行start命令进行数据同步

源端:

目的端:

验证数据同步情况

利用sqlark在源端生成100条新的数据,此时源端数据量为1100

此时查询目的端的数据量,查询数据量是否一致

目的端数据量也为1100,数据同步情况验证完成

达梦数据库社区:达梦数据库 - 新一代大型通用关系型数据库 | 达梦在线服务平台https://eco.dameng.com/

相关推荐
Bioinfo Guy2 小时前
高分Panel复现系列|转录因子网络太乱?用模块框把重点圈出来
数据库·生物信息学·生信可视化
ltl3 小时前
Disaggregated DB 合集:Socrates、PolarDB、Taurus 的共同模式
数据库
Blossom i6 小时前
大数据预处理与采集实验一:使用Python操作MySQL数据库
数据库·mysql
雾时之林6 小时前
Linux--软件管理、源码包安装
linux·服务器·数据库
老纪的技术唠嗑局8 小时前
超级干货分享:中小企业使用 OceanBase 实践经验汇总
数据库
CLOUD ACE8 小时前
谷歌云代理|零售商Target 如何利用 Spanner Graph 提升零售发现体验并将数据库维护成本降低 50%
数据库·零售
AI大模型-小雄8 小时前
Codex写分页接口为什么越翻越慢?用Cursor Pagination解决重复与漏数据
大数据·数据库·elasticsearch·搜索引擎·chatgpt·后端开发·codex
少晓年9 小时前
从 MySQL 迁移到人大金仓 KingbaseES:完整指南与实践
数据库·mysql
SelectDB10 小时前
Apache Doris AI RAG 实战:从基础 RAG 到知识图谱增强的技术能力与选型
数据库
SelectDB10 小时前
电商企业 PostgreSQL 迁移 Apache Doris:80TB 分析数据统一平台技术能力与实践
数据库