一、测试说明
达梦数据实时同步软件 DMHS 是达梦公司推出的新一代支持异构环境的高性能、高可 靠和高可扩展的数据库实时同步系统。该产品基于成熟的关系数据模型和标准接口,跨越多 种软硬件平台实现秒级数据实时同步。该产品可广泛应用于应急系统、容灾备份、负载均衡、 数据移植、联机维护、订阅分发和多业务中心等业务领域。
实验目标:完成DMHS部署,搭建一套DM7至DM7的数据同步链路,验证数据同步,DDL同步效果。通过实验熟悉DMHS产品特性。
环境规划:
192.168.50.100 db1 crm(实例) DMHS软件
192.168.50.200 db2 std(实例)
软件路径规划
Linux系统目录 | 说明 | |
1 | /dm7/dmdbms | 数据库软件安装路径 |
2 | /dm7/dmhs | DMHS安装路径 |
注意:因为需要获取源端数据库归档信息,所以DMHS服务(软件)必须部署在源端数据库所在服务器上,而目标端不做要求。
二、软件安装
1、图形化界面安装
安装类型推荐选择带WEB客户端的选项,方便配置操作。
2、命令行方式部署
略
3、服务启动
(1)启动内置数据库服务
/usr/lib/systemd/system/DmServiceHSDB.service
systemctl start DmServiceHSDB
(2)启动agent远程控制服务
/dm7/dmhs/hs_agent/DmhsAgentServiceHsAgent start
(3)启动web服务
/dm7/dmhs/web/bin/DmhsWebService start
web端访问http://192.168.50.100:8080/manager/
admin/888888
(4)图形化配置助手
/dm7/dmhs/tool/dmhs_hsca
三、ODBC驱动安装
1、下载驱动包,并解压
tar -zxvf unixODBC-2.3.0.tar.gz
2、源码安装三部曲(配置、编译、安装)
cd unixODBC-2.3.0/
./configure --prefix=/usr/local
make
make install
3、配置 odbc.ini 数据源信息和 odbcinst.ini 驱动信息
odbcinst -j
export ODBCINI=/usr/local/etc/odbc.ini
export ODBCSYSINI=/usr/local/etc
vi /usr/local/etc/odbcinst.ini
[DM7 ODBC DRIVER]
Description = ODBC DRIVER FOR DM7
Driver = /dm7/dmhs/db/bin/libdodbc.so
4、连接库文件
一般情况下libdmoci.so文件需要做软链接
cd /dm7/dmhs/bin
ln -s /dm7/dmhs/bin/stat/libdmoci.so libdmoci.so
四、源端库配置
1、开启归档
alter database mount;
alter database add archivelog type=local,dest=/dm7/dmdbms/data/CRM/ARCH,file_size=128,space_limit=2048';
alter database archivelog;
alter database open;
2、源端库开启逻辑附加日志
select name,type,value,sys_value,file_value from v$parameter t where name like 'RLOG_APPEND_LOGIC';
alter system set 'RLOG_APPEND_LOGIC'=1 both;
3、同步DDL操作
如果需要启动 DDL 同步功能,在启动捕获器之前,需要完成DDL配置。
对于DM7数据库,有两种配置方法。一是执行DMHS安装程序目录的scripts 文件夹中ddl_sql_dm7.sql,二是在 dm.ini 中设 置 参 数 RLOG_APPEND_SYSTAB_LOGIC 为1。
Oracle等其余数据库执行DMHS 安装程序目录的 scripts 文件夹中命名方式为 ddl_sql_***.sql的对应脚本。
select name,type,value,sys_value,file_value from v$parameter t where name like 'RLOG_APPEND_SYSTAB_LOGIC';
alter system set 'RLOG_APPEND_SYSTAB_LOGIC'=1 both;
--查看辅助表和触发器
select owner, table_name from dba_tables where owner = 'SYSDBA' and table_name like 'DMHS%' and status='VALID';
select owner, trigger_name from dba_triggers where owner = 'SYSDBA' and trigger_name like 'DMHS%' and status = 'Y';
五、WEB端创建相关服务
1、创建目标端exec执行器实例
右键点击Agent节点选择[添加DMHS实例]
注意:管理端口号和数据端口号,数据库版本等选项。
2、创建源端cpt捕获器实例
注意:目的IP地址填写[执行器]所在系统的地址(在192.168.50.100节点创建的),端口即为上一步[执行器]配置的端口。
六、启动同步服务
1、顺序说明
先启动执行端服务,再启动捕获端服务
先关闭捕获端服务,再关闭执行端服务
2、启动执行端服务
Web界面右键点击执行端服务,点击[启动]。
对应命令行: ./dmhs_serverd start 或者 service dmhs_serverd start
3、启动执行命令
对应控制台命令: start exec
4、启动捕获端服务
启动方式同2步
5、源端设置日志捕获模块起始LSN
打开捕获端服务控制台,设置日志捕获模块起始LSN
connect 192.168.50.100:5345
clear exec lsn
6、源端装载源端字典信息及历史数据
copy 0 "SCH.NAME='CRM'" CREATE|INSERT|DICT
注:装载掩码具体内容请参照管理员手册。
7、源端启动日志捕获模块
Web界面启动或命令:start cpt
七、添加DDL同步项
1、停止捕获端cpt同步服务
2、修改捕获端配置项
右键点击捕获服务,选择[修改配置]。点击[高级配置项(可选)]下拉框,找到DDL配置相关内容:
可根据需求,添加视图创建DDL同步,索引DDL同步等功能。、
3、重启DMHS捕获服务
最后再右键点击cpt捕获器模块选择启动。
八、双向链路测试
1、两节点分别部署DMHS软件
第一节点(192.168.50.100)安装web服务,第二节点不用安装,将客户端HsAgent内部数据库指向节点一。
2、分别在两个节点客户端创建执行器和捕获器
更多技术内容请访问社区:https://eco.dameng.com