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

相关推荐
liwenzhen200511 天前
DM 收集统计信息后内存中的SQL 执行计划无效测试
dm·收集统计信息
保定公民15 天前
达梦DMDRS数据库同步用户最小权限
数据库·达梦·达梦数据库·数据同步·dm·dmdrs
liwenzhen200520 天前
DM SQL 排序优化-消除排序
排序·sort·dm
liwenzhen200525 天前
DM 修改dm.ini 参数
dm·dm.ini·达梦数据库参数文件
liwenzhen20051 个月前
DM 使用DBMS_SQLTUNE 系统包查看SQL 执行计划
执行计划·dm·dbms_sqltune
liwenzhen20051 个月前
DM 行级锁
行级锁·dm
liwenzhen20051 个月前
DM 配置 unixODBC
odbc·dm
liwenzhen20051 个月前
DM 常用 HINT 参考
dm·hint
liwenzhen20051 个月前
DM SQL 排序优化
dm·sql 排序优化