DMDRS 配置

1. 源端数据库配置

  • 在源端数据库创建数据复制用户并授予相关权限;
  • 在源端数据库部署DMDRS数据复制软件。
  • 检查DM的归档模式、补充日志开启等

实施步骤

2. 创建DMDRS 同步用户及存储表空间。

源端和目标端都创建 DMDRS 管理用户和数据同步用户 TEST:

复制代码
create tablespace DMDRS datafile 'DMDRS01.DBF' size 512 autoextend off CACHE = NORMAL;
create user DMDRS identified by "xx" default tablespace "DMDRS" default index tablespace "DMDRS";
grant "DBA","PUBLIC","RESOURCE","SOI" to DMDRS;

create tablespace TEST datafile 'TEST.DBF' size 128 autoextend off CACHE = NORMAL;
create user TEST identified by "xx" default tablespace "TEST" default index tablespace "TEST";
grant "PUBLIC","RESOURCE" to TEST;
grant select any DICTIONARY to TEST;
grant creeate table to test;

3. 开启归档(正常安装都是开的)和逻辑附加日志

复制代码
call sp_set_para_value(1,'RLOG_APPEND_LOGIC',1);

select PARA_VALUE from v$dm_ini where para_name = 'ARCH_INI';
PARA_VALUE
----------
1

select PARA_VALUE from v$dm_ini where para_name = 'RLOG_APPEND_LOGIC';
PARA_VALUE
----------
1

4. 指定对应安装目录进行DRS软件安装

复制代码
./dmdrs_xx.bin -i

注意:未选择任何组件

5. 配置DDLDML语句同步,创建辅助表

同步DDL语句,创建DDL触发器和辅助表时,请使用具有DBA权限的用户。

复制代码
start /data/dmdrs5/bin/scripts/ddl_sql_dm8.sql    ----disql执行报错输入过长,最好管理工具跑 ddl_sql_dm8.sql   

检查创建的触发器和辅助表是否有效(4)

复制代码
select owner, trigger_name from dba_triggers where owner = 'SYSDBA' and trigger_name like 'DRS_$%' and status = 'Y';

检查创建的辅助表(9)

复制代码
select owner, table_name from dba_tables where owner = 'SYSDBA' and table_name like 'DRS_$%' and status = 'VALID';

调整源和目的的环境变量

复制代码
vi ~/.bash_profile
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/dmdbms/bin:/dmdbms/drivers/dpi"
source ~/.bash_profile

6. 源端配置 cpt.xml 文件

复制代码
<?xml version="1.0" encoding="GB18030"?>
<drs>
    <base>
        <mgr_port>5345</mgr_port>
        <siteid>1</siteid>       <===注意cpt.xml 和 exec.xml 不能一样
        <lang>en</lang>
    </base>
    <cpt>
        <name>cpt</name>
        <login>
            <dbtype>DM8</dbtype>
            <server>192.168.56.51</server>
            <user>DMDRS</user>
            <pwd>xx</pwd>
            <port>5236</port>
        <ddl_mask>OBJ:OP</ddl_mask>
        </login>
        <send>
            <ip>192.168.56.52</ip>
            <port>5345</port>
            <map>
            <target_name>exec</target_name>
                <item>TEST.*==TEST.*</item>   <===代表同步的模式
            </map>
        </send>
    </cpt>
</drs>

7. 目的端 exec.xml 文件配置

复制代码
<?xml version="1.0" encoding="GB18030"?>
<drs>
    <base>
        <mgr_port>5345</mgr_port>
        <siteid>2</siteid>
        <lang>en</lang>
    </base>
    <exec>
        <name>exec</name>
        <login>
            <dbtype>DM8</dbtype>
            <server>192.168.1.52</server>
            <user>DMDRS</user>
            <pwd>xx</pwd>
            <port>5236</port>
        </login>
    </exec>
</drs>

8. 源端注册服务

复制代码
$ cp service_template/TemplateService ./DrsService
#set execute environment
#REPLACE INSTALL_HOME path
INSTALL_HOME=/data/dmdrs5
#REPLACE program dir
PROG_DIR=/data/dmdrs5/bin
#REPLACE program config path
#If drs server is BP node and wants to startup without drs.xml,please specify the running port in CONF_PATH,for example,CONF_PATH="-port 5345"
CONF_PATH=/data/dmdrs5/bin/cpt.xml
#REPLACE need library path, LD_LIBRARY_PATH/LIBPATH
NEED_LIB_PATH=/home/dmdba/dmdbms/bin

#REPLACE program name, drsvr/dssvr/dvsvr
EXEC_PROG_NAME=drsvr
#REPLACE service type,  drs server/dss server/dvs server
SERVICE_TYPE_NAME="drs server"

9. 目的端注册服务

复制代码
[dmdba@kylin1:/dmdrs/bin]$ cp service_template/TemplateService ./DrsService
#set execute environment
#REPLACE INSTALL_HOME path
INSTALL_HOME=/data/dmdrs5
#REPLACE program dir
PROG_DIR=/data/dmdrs5/bin
#REPLACE program config path
#If drs server is BP node and wants to startup without drs.xml,please specify the running port in CONF_PATH,for example,CONF_PATH="-port 5345"
CONF_PATH=/data/dmdrs5/bin/exec.xml
#REPLACE need library path, LD_LIBRARY_PATH/LIBPATH
NEED_LIB_PATH=/home/dmdba/dmdbms/bin

#REPLACE program name, drsvr/dssvr/dvsvr
EXEC_PROG_NAME=drsvr
#REPLACE service type,  drs server/dss server/dvs server
SERVICE_TYPE_NAME="drs server"

10. 启动源端目的端 cpt 和 exec 服务

复制代码
目标端启服务:
[dmdba@kylin1:/dmdrs/bin]$ ./DrsService start
Starting DrsService:                                       [ OK ]

源端启服务:
[dmdba@kylin1:/dmdrs/bin]$ ./DrsService start
Starting DrsService:                                       [ OK ]

11. 连接目标端exec 服务

复制代码
$ ./drcsl exec.xml 
CSL> connect
CSL> show mode
CSL> exit

12. 连接源端cpt 服务

复制代码
$ ./drcsl cpt.xml
CSL> connect
CSL> alter cpt set lsn
CSL> alter cpt add table "sch.name='TEST'"
CSL> start
CSL> show mode
CSL> exit

欢迎访问达梦技术分享社区 ECO
https://eco.dameng.com

相关推荐
liwenzhen20053 小时前
DM SQL 排序优化-消除排序
排序·sort·dm
liwenzhen20055 天前
DM 修改dm.ini 参数
dm·dm.ini·达梦数据库参数文件
liwenzhen20055 天前
DM 使用DBMS_SQLTUNE 系统包查看SQL 执行计划
执行计划·dm·dbms_sqltune
liwenzhen20057 天前
DM 行级锁
行级锁·dm
liwenzhen20057 天前
DM 配置 unixODBC
odbc·dm
liwenzhen200521 天前
DM 常用 HINT 参考
dm·hint
liwenzhen200521 天前
DM SQL 排序优化
dm·sql 排序优化
liwenzhen200521 天前
DM SQL 查看执行计划
explain·执行计划·et·dm
liwenzhen200521 天前
Linux 环境编译安装 dmPython
dmpython·dm