基于DM7的DMHS双向复制

一.两端配置源端数据库环境:


设置归档标记和逻辑日志标记。打开 DM7 服务器配置文件“dm.ini”,设置如下值:

ARCH_INI = 1
RLOG_APPEND_LOGIC = 1
FAST_COMMIT = 0



添加归档配置文件。在“dm.ini”同目录下创建文件“dmarch.ini”,示例内容如下:
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /opt/dmdbms/arch #归档目录
ARCH_FILE_SIZE = 128 #归档文件大小,单位 MB
ARCH_SPACE_LIMIT = 0 #空间大小限制,0 表示不限制

重启生效:
/etc/init.d/dmserverd restart

验证:
SELECT ARCH_DEST, ARCH_FILE_SIZE FROM SYS.V$DM_ARCH_INI WHERE ARCH_TYPE='LOCAL'
AND ARCH_IS_VALID='Y';

 检查逻辑日志配置的正确性,通过下面的查询:
SELECT PARA_VALUE FROM SYS.V$DM_INI WHERE PARA_NAME = 'RLOG_APPEND_LOGIC';

 SELECT PATH FROM SYS.V$RLOGFILE;

 select para_value from v$dm_ini where para_name = 'FAST_COMMIT';

 二.两端安装dmhs:


./dmhs_V4.1.2_pack2_dm7_rev100195_rh6_64_veri_20210618.bin

 

 

 

 

 

 

 

 

 

 

 

 三.配置DDL同步


装目录下 scripts 子目录中“ddl_sql_dm7.sql”。注意创建时需要使用 SYSDBA 用户。


在管理器中执行:
start /home/dmdba/dm/dmhs/scripts/ddl_sql_dm7.sql

检查创建的触发器和辅助表是否有效,检查辅助表的语句
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';

 

四.配置dmhs.hs

4.1 一节点配置dmhs.hs

<?xml version="1.0" encoding="utf-8"?>
<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>
        <name>cpt</name>
        <enable>1</enable>
        <db_type>DM7</db_type>
        <db_server>172.16.30.1</db_server>
        <db_user>SYSDBA</db_user>
        <db_pwd>SYSDBA</db_pwd>
        <char_code>PG_GB18030</char_code>
        <db_port>5236</db_port>
        <idle_time>10</idle_time>
        <parse_thr>1</parse_thr>
        <ddl_mask>OBJ:PTABLE:OP:DEFINE:PARTITION</ddl_mask>
        <start_scn>0</start_scn>
        <send_lst>2</send_lst>
        <rec_heap_size>16</rec_heap_size>
        <vpool_size>8</vpool_size>
        <arch>
            <clear_interval>60</clear_interval>
            <clear_flag>0</clear_flag>
        </arch>
        <send>
            <ip>172.16.30.2</ip>
            <timeout>0</timeout>
            <mgr_port>5345</mgr_port>
            <data_port>5346</data_port>
            <max_log_num>2000</max_log_num>
            <net_pack_size>256</net_pack_size>
            <net_turns>0</net_turns>
            <crc_check>0</crc_check>
            <trigger>0</trigger>
            <constraint>0</constraint>
            <identity>0</identity>
            <case_sensitive>0</case_sensitive>
            <filter>
                <enable>
                    <item>DMHR.*</item>
                </enable>
                <disable/>
            </filter>
        </send>
    </cpt>
    <exec>
        <recv>
            <mgr_port>5345</mgr_port>
            <data_port>5346</data_port>
        </recv>
        <name>exec</name>
        <enable>1</enable>
        <db_type>DM7</db_type>
        <db_server>172.16.30.1</db_server>
        <db_user>SYSDBA</db_user>
        <db_pwd>SYSDBA</db_pwd>
        <char_code>PG_GB18030</char_code>
        <db_port>5236</db_port>
        <level>0</level>
        <exec_thr>1</exec_thr>
        <exec_sql>512</exec_sql>
        <exec_trx>5000</exec_trx>
        <exec_rows>250</exec_rows>
        <vpools>7</vpools>
        <recv_caches>8</recv_caches>
        <trxid_tables>1</trxid_tables>
    </exec>
</dmhs>

4.2 二节点配置dmhs.hs

<?xml version="1.0" encoding="utf-8"?>
<dmhs>
    <base>
        <lang>ch</lang>
        <mgr_port>5345</mgr_port>
        <chk_interval>3</chk_interval>
        <ckpt_interval>60</ckpt_interval>
        <siteid>2</siteid>
        <version>2.0</version>
    </base>
    <cpt>
        <name>cpt</name>
        <enable>1</enable>
        <db_type>DM7</db_type>
        <db_server>172.16.30.2</db_server>
        <db_user>SYSDBA</db_user>
        <db_pwd>SYSDBA</db_pwd>
        <char_code>PG_GB18030</char_code>
        <db_port>5236</db_port>
        <idle_time>10</idle_time>
        <parse_thr>1</parse_thr>
        <ddl_mask>OBJ:PTABLE:OP:DEFINE:PARTITION</ddl_mask>
        <start_scn>0</start_scn>
        <send_lst>2</send_lst>
        <rec_heap_size>16</rec_heap_size>
        <vpool_size>8</vpool_size>
        <arch>
            <clear_interval>60</clear_interval>
            <clear_flag>0</clear_flag>
        </arch>
        <send>
            <ip>172.16.30.1</ip>
            <timeout>0</timeout>
            <mgr_port>5345</mgr_port>
            <data_port>5346</data_port>
            <max_log_num>2000</max_log_num>
            <net_pack_size>256</net_pack_size>
            <net_turns>0</net_turns>
            <crc_check>0</crc_check>
            <trigger>0</trigger>
            <constraint>0</constraint>
            <identity>0</identity>
            <case_sensitive>0</case_sensitive>
            <filter>
                <enable>
                    <item>DMHR.*</item>
                </enable>
                <disable/>
            </filter>
        </send>
    </cpt>
    <exec>
        <recv>
            <mgr_port>5345</mgr_port>
            <data_port>5346</data_port>
        </recv>
        <name>exec</name>
        <enable>1</enable>
        <db_type>DM7</db_type>
        <db_server>172.16.30.2</db_server>
        <db_user>SYSDBA</db_user>
        <db_pwd>SYSDBA</db_pwd>
        <char_code>PG_GB18030</char_code>
        <db_port>5236</db_port>
        <level>0</level>
        <exec_thr>1</exec_thr>
        <exec_sql>512</exec_sql>
        <exec_trx>5000</exec_trx>
        <exec_rows>250</exec_rows>
        <vpools>7</vpools>
        <recv_caches>8</recv_caches>
        <trxid_tables>1</trxid_tables>
    </exec>
</dmhs>

五.启动数据装载:

检查DMHS安装目录下是否存在dmhs_cpt.tmp文件,如果存在则将该文件删除。
1)启动两端的dmhs服务
cd /opt/dmhs/bin
./DmhsServiceHSSERVER start

2)启动两端的执行服务
./dmhs_console
connect
start exec;
此处一定要用exec和cpt分别启动,不能用start命令,start命令不接cpt或exec默认根据配置文件即会启动cpt也会启动exec

3)数据装载
将有数据的一端将数据装载到另外一端
copy 0 “sch.name=’DMHR’“ create|insert
装载完成后将装载执行端的dm7的归档日志删除并重启dm7服务器,只保留重启后的归档日志,才能保证过滤掉装载数据的重复。
装载完成后在另外一端需要装载字典
copy 0 “sch.name=’DMHR’” dict|clear

4)启动两端的cpt服务
./dmhs_console
connect
start cpt

社区地址:https://eco.dameng.com

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值