三节点 DMHS 级联同步搭建

一、环境配置
完成三节点数据库部署并初始化,配置参数如下:

节点

192.168.2.132

192.168.2.133

192.168.2.130

数据库版本

DM8

DM8

DM8

实例名

DM1

DM2

DM3

端口号

5236

5236

5236

数据文件路径

/home/dmdba/dmdata

/home/dmdba/dmdata

/home/dmdba/dmdata

完成三节点 dmhs 部署,配置参数如下:

节点

192.168.2.132

192.168.2.133

192.168.2.130

安装路径

/home/dmdba/dmhs

/home/dmdba/dmhs

/home/dmdba/dmhs

按照标准安装步骤完成三台服务器的数据库和 dmhs 安装
二、部署 dmhs
由于之前已经搭建过节点一到节点二的 hs 同步链路,因此只需要把节点二
上的 bin 文件拷到相同目录并修改名字,不用再重新安装 dmhs ,节点三按标准
安装步骤安装 dmhs
后续的 dmhs.hs 配置文件和注册服务脚本就放在新的 bin3 目录下
三、 dmhs 配置
由于之前已经搭建了节点一到节点二的 hs 同步,搭建级联同步只需要再节
点二到节点三搭建一条同步链路,修改节点一到节点二的同步链路配置文件 level 65535
1. 节点一
<?xml version="1.0" encoding="utf-8"?>
<dmhs>
<base>
<lang>en</lang>
<mgr_port>5345</mgr_port> <ckpt_interval>60</ckpt_interval>
<siteid>1</siteid>
<version>2.0</version>
</base>
<cpt>
<db_type>dm8</db_type>
<db_server>127.0.0.1</db_server>
<db_user>SYSDBA</db_user>
<db_pwd>SYSDBA</db_pwd>
<db_port>5236</db_port>
<db_ssl_path></db_ssl_path>
<db_ssl_pwd></db_ssl_pwd>
<parse_thr>1</parse_thr>
<ddl_mask>op:obj</ddl_mask> <!--DDL 配置项 -->
<arch><!-- 归档清理配置项 -->
<clear_interval>600</clear_interval>
<clear_flag>0</clear_flag>
</arch>
<send><!-- 发送模块配置 -->
<ip>192.168.2.133</ip>
<mgr_port>5345</mgr_port>
<data_port>5346</data_port>
<trigger>1</trigger><!-- 是否忽略触发器,默认为 0 ,限定值 0,1 -->
<constraint>1</constraint><!-- 是否忽略约束,默认为 0 ,限定值 0,1 -->
<identity>1</identity>
<net_turns>0</net_turns>
<filter><!-- 过滤配置项 -->
<enable><!-- 白名单,所有允许同步的表 -->
<item>SYSDBA.*</item>
</enable> </filter>
<map><!-- 映射配置项 -->
<item>SYSDBA.*==SYSDBA.*</item>
</map>
</send>
</cpt>
</dmhs>
2. 节点二(既要配置 cpt 模块,也要配置 exec 模块)
1 )节点一到节点二的 exec 模块
修改 level 65535 siteid 2
<?xml version="1.0" encoding="utf-8"?> <dmhs>
<base>
<lang>en</lang>
<mgr_port>5345</mgr_port>
<ckpt_interval>60</ckpt_interval>
<siteid>2</siteid>
<version>2.0</version>
</base>
<exec>
<recv>
<data_port>5346</data_port>
</recv>
<level>65535</level>
<db_type>dm8</db_type>
<db_server>192.168.2.133</db_server>
<db_user>SYSDBA</db_user>
<db_pwd>SYSDBA</db_pwd>
<driver>DM8 ODBC DRIVER</driver>
<db_port>5236</db_port>
<db_name></db_name>
<exec_thr>4</exec_thr>
<exec_sql>1024</exec_sql>
<exec_trx> 5000 </exec_trx>
<exec_rows>1000</exec_rows>
</exec>
</dmhs>
2 )节点二到节点三的 cpt 模块
相比节点一到节点二的 cpt 模块,节点二到节点三的模块配置文件需要修改端口 ip ,其他可以不变
<?xml version="1.0" encoding="utf-8"?>
<dmhs>
<base>
<lang>en</lang>
<mgr_port>5347</mgr_port>
<ckpt_interval>60</ckpt_interval>
<siteid>3</siteid> <version>2.0</version>
</base>
<cpt>
<db_type>dm8</db_type>
<db_server>127.0.0.1</db_server>
<db_user>SYSDBA</db_user>
<db_pwd>SYSDBA</db_pwd>
<db_port>5236</db_port>
<db_ssl_path></db_ssl_path>
<db_ssl_pwd></db_ssl_pwd>
<parse_thr>1</parse_thr>
<ddl_mask>op:obj</ddl_mask> <!--DDL 配置项 -->
<arch><!-- 归档清理配置项 -->
<clear_interval>600</clear_interval>
<clear_flag>0</clear_flag>
</arch>
<send><!-- 发送模块配置 -->
<ip>192.168.2.130</ip>
<mgr_port>5347</mgr_port>
<data_port>5348</data_port>
<trigger>1</trigger><!-- 是否忽略触发器,默认为 0 ,限定值 0,1 -->
<constraint>1</constraint><!-- 是否忽略约束,默认为 0 ,限定值 0,1 -->
<identity>1</identity>
<net_turns>0</net_turns>
<filter><!-- 过滤配置项 -->
<enable><!-- 白名单,所有允许同步的表 -->
<item>SYSDBA.*</item>
</enable>
</filter> <map><!-- 映射配置项 -->
<item>SYSDBA.*==SYSDBA.*</item>
</map>
</send>
</cpt>
</dmhs>
3. 节点三
端口和节点二上的 cpt 模块保持一致,并且也要配置 <level>65535</level>
<?xml version="1.0" encoding="utf-8"?>
<dmhs>
<base>
<lang>en</lang> <mgr_port>5347</mgr_port>
<ckpt_interval>60</ckpt_interval>
<siteid>4</siteid>
<version>2.0</version>
</base>
<exec>
<recv>
<data_port>5348</data_port>
</recv>
<level>65535</level>
<db_type>dm8</db_type>
<db_server>192.168.2.130</db_server>
<db_user>SYSDBA</db_user>
<db_pwd>SYSDBA</db_pwd>
<driver>DM8 ODBC DRIVER</driver>
<db_port>5236</db_port>
<db_name></db_name>
<exec_thr>4</exec_thr>
<exec_sql>1024</exec_sql>
<exec_trx> 5000 </exec_trx>
<exec_rows>1000</exec_rows>
</exec>
</dmhs>
四、启动服务
将新搭建的节点二到节点三的同步链路注册服务并启动
其中节点二应该有两个 hs 服务进程
五、同步验证
1. 节点二到节点三同步验证
装载源数据后在节点三查询
可以查到已同步的数据
2. 节点一到节点三的级联同步验证
节点一新建表 T4
节点二验证同步
节点三验证同步
六、总结
在搭建三节点级联同步时,需要关注端口与 IP 的准确配置。首先,在节点
一和节点二之间成功建立了同步链路,确保数据能够实时传输。随后,在节点二
上配置了与节点三相同的 data_port mgr_port ,并设置 level 65535 。并且各
节点模块的 siteid 不能相同,如果重复,会造成链路中数据同步的混乱。
  • 11
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值