DMHS软件的安装源端因为需要捕获产生的数据,所以必须要和源端数据库部署在同一台机器上,目的端可以不用部署在和目的端数据库同一台机器上,以下演示为了方便,源端DMHS软件和源端数据库部署在同一台机器上,目的端DMHS软件和目的端数据库部署在同一台机器上
1.分别在源端机器和目的端机器上安装DM数据库软件,安装目录为/home/dmdba/dmdbms
2.分别在源端机器和目的端机器上初始化一个单机实例,实例目录为/dmdata/dmdb
3.分别在源端机器和目的端单机实例上开启归档,归档文件存放路径为/dmdata/dmarch/arch
4.在源端数据库上创建用于同步的用户,当然也可以直接使用默认的SYSDBA用户,如果使用默认的SYSDBA用户则跳过此步骤
create user DMHS identified by "DMHS1234" default tablespace DMHS;
grant "RESOURCE","PUBLIC" to "DMHS";
grant SELECT ANY TABLE to "DMHS";
5.在源端机器和目的端机器上分别安装DMHS软件,安装目录为/home/dmhs
6.在源端数据库上执行ddl触发器脚本,脚本位于DMHS安装目录scripts下,disql或者图形化管理工具连接数据库,执行ddl_sql_dm8.sql脚本,新增DDL触发器
7.在目的端上添加目的端执行器配置文件DMHS.HS
<?xml version="1.0" encoding="GB2312" standalone="no"?>
<dmhs>
<base>
<lang>ch</lang>
<mgr_port>5345</mgr_port>
<name>TEST_DEST</name>
<ckpt_interval>60</ckpt_interval>
<siteid>6</siteid>
<version>2.0</version>
</base>
<exec>
<recv>
<mgr_port>5345</mgr_port>
<data_port>5346</data_port>
</recv>
<enable>1</enable>
<name>exec</name>
<db_type>DM8</db_type>
<db_server>目标端ip</db_server>
<db_user>DMHS</db_user>
<db_pwd>DMHS1234</db_pwd>
<db_port>5236</db_port>
<exec_thr>8</exec_thr>
<exec_policy>2</exec_policy>
<save_mask>EXEC:ROLLBACK:PROLLBACK</save_mask>
<save_max_size>4096</save_max_size>
</exec>
</dmhs>
8.在源端机器上添加源端捕获器配置文件DMHS.HS
<?xml version="1.0" encoding="GB2312" standalone="no"?>
<dmhs>
<base>
<lang>ch</lang>
<mgr_port>5345</mgr_port>
<name>TEST_SRC</name>
<ckpt_interval>60</ckpt_interval>
<siteid>10</siteid>
<version>2.0</version>
<group>1</group>
</base>
<cpt>
<enable>1</enable>
<name>cpt</name>
<db_type>DM8</db_type>
<db_server>源端ip</db_server>
<db_user>DMHS</db_user>
<db_pwd>DMHS1234</db_pwd>
<db_port>5236</db_port>
<idle_time>300</idle_time> <ddl_mask>TABLE:VIEW:PROCEDURE:FUNCTION:INDEX:CHECK:SEQUENCE:TYPE:SYNONYM:OP:REC</ddl_mask>
<check_date>0</check_date>
<arch>
<clear_flag>0</clear_flag>
<clear_interval>600</clear_interval>
</arch>
<send>
<ip>目的端ip</ip>
<mgr_port>5345</mgr_port>
<data_port>5346</data_port>
<filter>
<enable>
<item>*</item>
</enable>
</filter>
</send>
</cpt>
</dmhs>
9.启动目的端DMHS服务并且开启执行器
--xshell登陆目的端服务器
cd /home/dmdba/dmhs/bin
./dmhs_server /home/dmdba/dmhs/bin/dmhs.hs (启动目的端dmhs服务)
./dmhs_console (打开控制工具)
connect (这里ip是127.0.0.1,管理端口是默认的5345,所以ip和port都可以省略)
start exec (启动执行器)
10.启动源端DMHS服务并且开启捕获器
--xshell登陆源端服务器
cd /home/dmdba/dmhs/bin
./dmhs_server /home/dmdba/dmhs/bin/dmhs.hs (启动源端dmhs服务)
./dmhs_console (打开控制工具)
connect
clear exec lsn
copy 0 "sch.name='DMDBA'" CLEAR|DICT
copy 0 "sch.name='DMDBA'" CREATE|INSERT
start cpt
11.测试
使用图形化管理工具或者disql工具连接源端数据库,在DMDBA模式下创建一张表并插入一些数据,然后验证目的端库下是否有数据同步过来了
删除源端数据库DMDBA模式下TABLE_1表中的部分数据,再连接到目的端数据库中,确认DMDBA模式TABLE_1表中的数据是否也同步删除了
更多资讯请上达梦技术社区了解:https://eco.dameng.com