DMHS 搭建(DM8到DM8的单向同步)

一、DMHS工具特点

(1)捕获器将源端数据库日志读取解析后发送出去,它必须与源端数据库在同一台机器上

(2)即使源数据库中断了服务,也不会影响日志分析。

(3)执行器将接收到的数据入库执行,它可以与目标端数据库处于不同机器

(4)路由是 N 对 N 网络链路的映射,它不能对链路中的数据进行

修改,而转发功能则可以针对每个下一级配置不同的过滤和映射

(5)并行处理体系,以源数据库的事务为单位同步,TCP/IP协议传输,断电续传,备机可读写,备机可以在主机故障接管,

(6)可以支持一对一,一对多,多对一,多对多,级联同步

二、开启归档和逻辑日志

1、打开dm.ini 添加如下参数

ARCH_INI = 1
RLOG_APPEND_LOGIC = 1

dm.ini 配置参数中“FAST_COMMIT”必须为 0

2、添加归档配置文件。在“dm.ini”同目录下创建文件“dmarch.ini”

[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL 
ARCH_DEST = /opt/dmdbms/arch #归档目录
ARCH_FILE_SIZE = 128 #归档文件大小,单位 MB
ARCH_SPACE_LIMIT = 0 #空间大小限制,0 表示不限

 3、重启数据库,使其配置生效

4、验证配置的正确性

SQL>SELECT ARCH_DEST, ARCH_FILE_SIZE FROM SYS.V$DM_ARCH_INI WHERE ARCH_TYPE='LOCAL' AND ARCH_IS_VALID='Y';

SQL>SELECT PARA_VALUE FROM SYS.V$DM_INI WHERE PARA_NAME = 'RLOG_APPEND_LOGIC';

SQL>SELECT PATH FROM SYS.V$RLOGFILE;

三、需要在源端和目的端分别安装dmhs软件。

1)    将安装包上传至服务器,并授予可执行权限

chmod 775 dmhs_V3.1.3_dm7.bin

2)    运行安装程序(命令行安装)

./dmhs_V3.1.3_dm7.bin  -i

 四、配置DDL

如果要求 DDL 同步,那么需要创建 DDL 触发器和辅助表。创建的脚本参见 DMHS 安装目录下 scripts 子目录中“ddl_sql_dm8.sql”。注意创建时需要使用 SYSDBA 用户。

cd /opt/dmhs/scripts/
`/opt/dmhs/scripts/ddl_sql_dm8.sql
执行成功后显示:
11条语句执行成功

五、配置DMHS安装目录下dmhs.hs文件

1、源端

<?xml version="1.0" encoding="GB2312" standalone="no"?>
<dmhs>
    <base>
        <lang>ch</lang>
        <mgr_port>5345</mgr_port>
        <chk_interval>3</chk_interval>
        <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>
	<idle_time>300</idle_time>
        <dict_dir>/home/dmdba/dm/dmhs/dmhs_dict</dict_dir>
        <ddl_mask>obj:op</ddl_mask>
        <parse_thr>1</parse_thr>
	<arch>
        	<clear_interval>600</clear_interval>
        	<clear_flag>0</clear_flag>
		<bak_dir>/dbarch/dmarch</bak_dir>
        </arch>
        <send>
            <ip>192.168.159.155</ip>
            <mgr_port>5345</mgr_port>
            <data_port>5346</data_port>
            <net_turns>0</net_turns>
            <trigger>1</trigger>
            <constraint>0</constraint>
            <identity>1</identity>
            <filter>
                <enable>
                   <item>*.*</item>
                </enable>
            </filter>
            <map>
        </map>
        </send>
    </cpt>
</dmhs>

2、目的端

<?xml version="1.0" encoding="GB2312"?>
<dmhs>
        <base>
                <mgr_port>5355</mgr_port>
                <chk_interval>2</chk_interval>
                <siteid>4</siteid>
                <lang>ch</lang>
        </base>
        <recv>
                <data_port>5356</data_port>
                <exec>
                        <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_name></db_name>
                        <exec_thr>4</exec_thr>
                        <exec_sql>512</exec_sql>
                        <exec_trx> 5000 </exec_trx>
                        <exec_rows>250</exec_rows>
                        <exec_policy>2</exec_policy>
                        <level>3</level>
                        <affect_row>0</affect_row>
                </exec>
        </recv>
</dmhs>

六、编辑源端和目的端的dmhs_serverd配置文件(可略)

主要是改两点,path=/opt/dmhs/bin/dmhs.xml和export LD_LIBRARY_PATH=/home/dmdba/dm/dmdbms/bin:$DMHS_HOME:$LD_LIBRARY_PATH)

 七、启动服务

分别在目的端和源端执行命令,启动dmhs_server进程

./dmhs_serverd start

八、装载

目的端启动dmhs控制台,执行线程:

源端启动dmhs控制台,执行装载命令:

在初次搭建过程中,需要将源端数据加载到目的端,有两种操作方法。

如果需要保证目的端数据和源端数据完全一致,搭建时选择将源数据库停止对应用程序访问,并对源数据库进行物理备份,并在目的端数据库进行还原。还原操作需要放到启动dmhs_server之前。

此种情况下,源端装载,执行命令:

[root@db01 bin]# ./dmhs_console 
CSL[INFO]: DMHS控制台工具: V3.0.2.01-Build(2015.10.09)
DMHS >connect
CSL[UNKNOW]: 执行成功
DMHS >COPY 0 "SCH.NAME IS NOT NULL"  DICT|LSN

这种装载方法,只会进行字典信息及LSN值的装载,启动同步后会从COPY时刻记录的LSN值开始进行数据同步。

九、开启数据同步

源端开启数据同步

在数据装载完毕后,在源端开启数据同步

DMHS >start cpt

(安装完毕,可在源端创建表检测目的端是否同步)

https://eco.dameng.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值