配置DMHS实时同步(DM>>DM)

目录

1:环境配置:

1.1:环境准备

1.2:安装dm数据库

1.2.1:源端初始化实例

1.2.2目的端初始化实例

1.3安装dmhs

1.3.1上传并授权

1.3.2命令行安装

2:修改系统参数(源端目的端都要修改)

2.1:配置文件参数

2.1.1打开数据库归档模式并打开逻辑附加日志(记录数据库操作的日志,用于发送给目的端)

2.1.2:添加归档配置文件

2.1.3启动数据库后,验证相关参数是否正确

2.2:DDL同步触发器配置

3:DMHS同步文件参数配置:

4启动服务和同步模块

4.1源端和目的端注册服务:

4.2进行数据同步:

4.2.1目的端启动本地EXEC模块

4.2.2源端启动本地CPT模块


1:环境配置:

1.1:环境准备

DMHS支持的操作系统平台:Windows系列(包括XP、Win2003、Win7/8/10、WinServer2008等),Linux(Redhat、Ubuntu、CentOS、Kylin、Rocky等)、Aix、Solaris等。

内存要求:DMHS 需要的内存总量取决于执行的分析线程以及执行线程的并发数,最少需要 1G 内存。

磁盘需求:DMHS 安装文件占用 277M,包括了管理工具以及管理界面占用的空间,另外需要一些额外的空间存储 DMHS 运行的日志文件。

操作系统权限:在 Windows 安装时,安装和执行 DMHS 的用户必须是管理员身份;在 Linux 平台下安装,安装用户必须有权限读写 DMHS 安装目录,将涉及的数据库接口动态库添加到系统共享库环境变量中。

TCP/IP:配置系统支持 TCP/IP 服务(DMHS 安装的所有机器必须配置主机名或者 IP 地址)。DMHS需要使用以下 TCP/IP 端口:管理进程间通信的默认端口 5345;发送和执行子系统之间通信的默认端口 5346;用户可以自行定义这些端口。

1.2:安装dm数据库

1.2.1:源端初始化实例

./dminit PATH=/soft/dm8/data EXTENT_SIZE=32 PAGE_SIZE=16 LOG_SIZE=256 UNICODE_FLAG=1 SYSDBA_PWD=tangyurun123 DB_NAME=hms INSTANCE_NAME=shms BUFFER=300

查看数据库运行状态

1.2.2目的端初始化实例

./dminit PATH=/soft/dm8/data EXTENT_SIZE=32 PAGE_SIZE=16 LOG_SIZE=256 UNICODE_FLAG=1 SYSDBA_PWD=tangyurun123 DB_NAME=hms2 INSTANCE_NAME=shms2 BUFFER=300

检查数据库运行状态

1.3安装dmhs

1.3.1上传并授权

1.3.2命令行安装

具体参考日志文件

2:修改系统参数(源端目的端都要修改)

2.1:配置文件参数

2.1.1打开数据库归档模式并打开逻辑附加日志(记录数据库操作的日志,用于发送给目的端)

arch_ini=1 #开启归档

rlog_append_logic=1 #开启逻辑附加日志 特别注意,开启逻辑附加日志时必须保证“FAST_COMMIT"为0!

2.1.2:添加归档配置文件

[ARCHIVE_LOCAL1]

ARCH_TYPE = LOCAL

ARCH_DEST = /soft/dm8/arch #归档目录

ARCH_FILE_SIZE = 128 #归档文件大小,单位 MB

ARCH_SPACE_LIMIT = 0 #空间大小限制,0 表示不限

2.1.3启动数据库后,验证相关参数是否正确

#检查归档配置的正确性

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;

#检查 FAST_COMMIT 参数是否为 0

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

源端验证:

目的端验证:

2.2:DDL同步触发器配置

该部分功能目的是为了源端/目的端配置DDL触发器由于本次实验作为DM到DM过程中,因此该部分触发器只需要配置源端即可。后续会自动同步

#在源端服务器上,通过disql连接数据库后执行以下命令

SQL>start /soft/dmhs/scripts/ddl_sql_dm8.sql

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

SQL>select owner, table_name from dba_tables where owner = 'SYSDBA' and table_name like 'DMHS%' and status = 'VALID';

#检查触发器

SQL>select owner, trigger_name from dba_triggers where owner = 'SYSDBA' and trigger_name like 'DMHS%' and status = 'Y';

3:DMHS同步文件参数配置:

在源端配置dmhs.hs文件
<?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>192.168.50.138</db_server>
<db_user>SYSDBA</db_user>
<db_pwd>LBHA88888</db_pwd>
<db_port>5235</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.50.139</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>
目的端同样配置DMHS文件
<?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>
<db_type>dm8</db_type>
<db_server>192.168.20.172</db_server>
<db_user>SYSDBA</db_user>
<db_pwd>tangyurun123</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>

4启动服务和同步模块

4.1源端和目的端注册服务:

#root /cd /home/dmdba/dmhs/scripts

#root/./dmhs_service_installer.sh -t dmhs_server -a true -p HMS -x /home/dmdba/dmhs/bin/dmhs.hs -d /home/dmdba/dmhs/bin

4.2进行数据同步:

4.2.1目的端启动本地EXEC模块

#执行端运行 DMHS 软件工具,启动服务

[dmdba@dmhs02 bin]$ ./DmhsServiceHMT start

#执行端运行 DMHS 软件工具 dmhs_console

[dmdba@dmhs02 bin]$ ./dmhs_console

#连接执行端 DMHS 服务

DMHS> connect

#启动日志执行模块

DMHS> start exec

4.2.2源端启动本地CPT模块

#源端运行 DMHS 软件工具 dmhs_server,启动服务

[dmdba@dmhs01 bin]$ ./DmhsServiceHMS start

#使用dmhs_cosole工具连接DMHS管理服务

[dmdba@dmhs02 bin]$ ./dmhs_console

#连接源端 DMHS 服务

DMHS> connect

#设置日志捕获模块起始 LSN

DMHS> clear exec lsn

#装载源端字典信息及历史数据

DMHS> copy 0 "sch.name='SYSDBA'" DICT|LSN|CREATE|INSERT|INDEX

#执行start cpt

DMHS> start cpt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值