2021-01-18

Oracle11g-DM8单实例数据库DMHS部署搭建

一、DMHS软件安装

1.1 环境需求
内存要求: DMHS 需要的内存总量取决于执行的分析线程以及执行线程的并发数,最少需要 1G 内存。
磁盘需求: DMHS 安装文件占用 443M,包括了管理工具以及管理界面占用的空间,另外需要一些额外的空间存储 DMHS 运行的日志文件。
操作系统权限: 在 Windows 安装时,安装和执行 DMHS 的用户必须是管理员身份;在 Linux 平台下安装,安装用户必须有权限读写 DMHS 安装目录,将涉及的数据库接口动态库添加到系统共享库环境变量中。
网络要求: 配置系统支持 TCP/IP 服务(DMHS 安装的所有机器必须配置主机名或者 IP地址)。 DMHS 需要使用以下 TCP/IP 端口:管理进程间通信的默认端口 5345;发送和执行子系统之间通信的默认端口 5346;用户可以自行定义这些端口。

1.2 软件安装

(1)系统的硬件环境如下(虚拟机)
硬件名称 配置
Red Hat Oracle
(安装Oracle) 源端服务器操作系统:Red Hat Enterprise Linux Server release 6.4
内存:2G
磁盘:40G
Red Hat -dmhs-destination
(安装DM数据库) 目的端服务器操作系统:Red Hat Enterprise Linux Server release 6.4
内存:2G
磁盘:30G

(2)网络环境配置
数据库环境 列表
IP设置 Oracle源端:192.168.175.160
DM 目的端:192.168.175.161

(3)数据库版本
版本号 开发商
Oracle
Oracle Database 11g 11.2.0.1.0 - 64 甲骨文
DM8 dm8_x86_rh6_64_ent_8.1.1.134 武汉达梦数据库有限公司

(4)安装数据库
1)源端安装Oracle 11g,安装过程具体参考网上教程;
2)目的端安装DM8数据库,具体安装参考DM8安装手册。

(5)安装DMHS
注意:Oracle端和DM数据端使用的DMHS版本不一样!!!
1) Oracle源端安装DMHS
安装时使用Oracle的安装用户组(oracle.oinstall)Linux安装命令:
./ dmhs_V3.1.3_oracle_rev95241_rh6_64_veri_…bin(图形界面安装)
./ dmhs_V3.1.3_oracle_rev95241_rh6_64_veri_…bin -i (非图形化安装)

安装过程如下:
[oracle@asmora home]$ ./dmhs_V3.1.3_oracle_rev95241_rh6_64_veri_…bin -i
Extract install files…

1.英文(English)
2.简体中文(简体中文)
请选择安装语言[2.简体中文(简体中文)]:2
/tmp/DMHSInstall/install.log
1.免费试用达梦数据实时同步
2.使用已申请的Key文件
验证许可证文件[1.免费试用达梦数据实时同步]:1
1.精简版
2.完整版(web客户端)
3.自定义
安装类型[1.精简版]:2
1.实时同步软件服务器
2.远程部署工具
3.实时同步软件客户端
4.内置数据库
5.实时同步软件配置助手
6.手册
所需磁盘空间:828 MB
安装目录: [/home/dmhs]/home/dmhs
1.统一部署
2.现在初始化
是否初始化达梦数据实时同步系统[1.统一部署]:1
正在安装
default start … default finished.
server start … server finished.
hs_agent start … hs_agent finished.
webmanager start … webmanager finished.
db start … db finished.
hsca start … hsca finished.
doc start … doc finished.
doc start … doc finished.
postinstall start … postinstall finished.
正在创建快捷方式
安装成功
远程部署工具配置
远程部署工具名称[HsAgent]:
主机Ip(外网)192.168.175.160:
远程部署工具管理端口5456:
内置数据库轮询间隔3:
内置数据库IP[192.168.175.160]:
内置数据库端口[15236]:
内置数据库用户名[SYSDBA]:
内置数据库密码[SYSDBA]:
内置数据库服务
1.自动
2.手动
启动方式:[2.手动]2
正在创建内置数据库服务
初始化内置数据库
远程控制服务
1.自动
2.手动
启动方式:[2.手动]2
正在创建远程控制服务
web服务
1.自动
2.手动
启动方式:[2.手动]2
正在创建web服务
达梦数据实时同步 V4.0 安装完成
更多安装信息,请查看安装日志文件:
/home/dmhs/log/install.log

至此,Oracle源端DMHS安装完成,后续进行相关配置;

2) DM8目的端安装DMHS

Linux安装命令:
./ dmhs_V3.1.3_dm8_rev95241_rh6_64_veri_202…bin(图形界面安装)
./ dmhs_V3.1.3_dm8_rev95241_rh6_64_veri_202…bin -i (非图形化安装)

安装过程:
[dmdba@localhosthome]$ ./dmhs_V3.1.3_dm8_rev95241_rh6_64_veri_202…bin -i
Extract install files…

1.英文(English)
2.简体中文(简体中文)
请选择安装语言[2.简体中文(简体中文)]:2
/tmp/DMHSInstall/install.log
1.免费试用达梦数据实时同步
2.使用已申请的Key文件
验证许可证文件[1.免费试用达梦数据实时同步]:1
1.精简版
2.完整版(web客户端)
3.自定义
安装类型[1.精简版]:2
1.实时同步软件服务器
2.远程部署工具
3.实时同步软件客户端
4.内置数据库
5.实时同步软件配置助手
6.手册
所需磁盘空间:828 MB
安装目录: [/home/dmdba/dmhs]/home/dmdba/dmhs
1.统一部署
2.现在初始化
是否初始化达梦数据实时同步系统[1.统一部署]:1
正在安装
default start … default finished.
server start … server finished.
hs_agent start … hs_agent finished.
webmanager start … webmanager finished.
db start … db finished.
hsca start … hsca finished.
doc start … doc finished.
doc start … doc finished.
postinstall start … postinstall finished.
正在创建快捷方式
安装成功
远程部署工具配置
远程部署工具名称[HsAgent]:
主机Ip(外网)192.168.175.161:
远程部署工具管理端口5456:
内置数据库轮询间隔3:
内置数据库IP[192.168.175.161]:
内置数据库端口[15236]:
内置数据库用户名[SYSDBA]:
内置数据库密码[SYSDBA]:
内置数据库服务
1.自动
2.手动
启动方式:[2.手动]2
正在创建内置数据库服务
初始化内置数据库
远程控制服务
1.自动
2.手动
启动方式:[2.手动]2
正在创建远程控制服务
web服务
1.自动
2.手动
启动方式:[2.手动]2
正在创建web服务
达梦数据实时同步 V4.0 安装完成
更多安装信息,请查看安装日志文件:
/home/dmdba/dmhs/log/install.log

至此,DM数据库目的端DMHS安装完成,后续进行相关配置;

二、DMHS相关配置
采用的是手动配置dmhs.hs,即在安装目录/home/dmdba/dmhs/bin下手动添加dmhs.hs文件,源端和目的端的配置文件内容不同,需要注意!!!

2.1 Oracle源端配置

(1)Oracle数据库初始配置
1)创建同步数据用户
连接数据库:sqlplus / as sysdba
创建用户:create user dmhs identified by dmhs;
赋予bda权限:grant dba to dmhs;

2) 检查Oracle是否开启归档日志,如果未开启归档日志,先关闭 Oracle 服务,开启归档日志
SQL>archive log list;
开启归档日志:
SQL>SHUTDOWN IMMEDIATE;
SQL>STARTUP MOUNT;
SQL> ALTER DATABASE ARCHIVELOG;
SQL>ARCHIVE LOG LIST;
SQL>ALTER SYSTEM SET DB_RECOVERY_FILE_DEST=’’;
SQL>ALTER SYSTEM SET LOG_ARCHIVE_DEST=’/u01/app/oracle/arch’;
SQL>ALTER DATABASE OPEN;
如图:
在这里插入图片描述

  1. 检查是否开启最小附加日志及全列日志
    SQL>ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
    SQL>ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
    SQL>SELECT SUPPLEMENTAL_LOG_DATA_MIN, SUPPLEMENTAL_LOG_DATA_ALL FROM V$DATABASE;

如图:
在这里插入图片描述
4) 检查服务名
[oracle@asmora home]$ tnsping orcl
如图:
在这里插入图片描述

5)关闭Oracle回收站功能
SQL> alter system set recyclebin=off deferred;
如图:
在这里插入图片描述

(2)Oracle源端配置DDL
如果要求DDL同步,那么需要创建DDL触发器和辅助表。创建的脚本参见DMHS安装目录下scripts子目录中ddl_sql_ora.sql脚本。注意创建时需要使用SYSDBA用户,本次搭建需要创建DDL触发器和辅助表,如图:
在这里插入图片描述

建议采用打开脚本,复制脚本中每个DDL语句逐步执行,一定要按脚本中的顺序逐步执行,不然会出现创建不成功!!!创建语句报错时应注意检查脚本是否有非法字符(多数为空格)!!!

(3)Oracle源端配置dmhs.hs
安装目录/home/dmhs/bin下的dmhs.hs是DMHS默认的配置文件,如果需要DDL同步,那么基本的配置示例如下:

<?xml version="1.0" encoding="GB2312"?>
<dmhs>
        <base>
                <lang>ch</lang>
                <mgr_port>5345</mgr_port>
                <ckpt_interval>45</ckpt_interval>
                <siteid>1</siteid>
                <version>2.0</version>
        </base>
        <cpt>
                <db_type>oracle11g</db_type>
                <db_server>ORCL</db_server>
                <db_user>dmhs</db_user>
                <db_pwd>dmhs</db_pwd>
                <db_port>1521</db_port>
                <ddl_mask>op:obj</ddl_mask>
                <arch>
                        <clear_interval>600</clear_interval>
                        <clear_flag>0</clear_flag>
                </arch>
                <send>
                        <ip>192.168.175.161</ip>
                        <mgr_port>5345</mgr_port>
                        <data_port>5346</data_port>
                        <filter>
                                <enable>
                                        <item>DMHS.*</item>
                                </enable>
                        </filter>
                        <map><!--映射配置项-->
                        <item>DMHS.*==DMHS.*</item>
                        </map>
                </send>
        </cpt>
</dmhs>

注:需要root用户创建归档目录/u01/app/oracle/arch,并赋予Oracle的用户权限,命令如下:
mkdir -p /u01/app/oracle/arch
chown oracle.oinstall arch
现对以上的基本配置作如下几点说明:

  1. siteid全局唯一,即DMHS同步系统涉及的所有节点的siteid必须全局唯一,不允许有重复值。
  2. DDL配置项,如果不需要DDL同步,那么就配置为空,即<ddl_mask></ddl_mask>,相应地DMHS DDL触发器和辅助表也不需要创建。
  3. 归档清理配置项,clear_flag为1表示清除,即DMHS将同步完成的归档文件删除;为2,表示将同步完成的归档移到bak_dir目录下;为0,表示不作任何操作。
  4. 过滤配置项,本示例配置了白名单,即enable,也可以配置黑名单,详见DMHS用户手册。其过滤的规则是:先判断白名单,然后判断黑名单。如果存在重叠的情况,那么也是会被过滤的。
  5. 映射配置项,表示存在不同模式之间的表同步,例如本示例中源端的DMHS DMHS模式下的表映射成目的端的DMHS模式下同名的表。

2.2 DM8目的端配置(操作端)

(1)Oracle数据库初始配置
连接数据库:./disql SYSDBA/SYSDBA@192.168.175.161:5236
创建用户:Create user dmhs identified by dmhs123456;
赋予bda权限:Grant dba to dmhs;

(2)DM8目的端配置dmhs.hs
安装目录/home/dmdba/dmhs/bin下添加dmhs.hs,文件内容如下:

<?xml version="1.0" encoding="GB2312"?>
<dmhs>
        <base>
            <lang>ch</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.175.161</db_server><!--目的端IP-->
        <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>1024</exec_sql>
        <exec_trx> 5000 </exec_trx>
        <exec_rows>1000</exec_rows>
</exec>
</dmhs>

2.3 初始装载
初始装载是将源端数据库中的初始数据装载到目的端数据库,使DMHS同步的时刻源和目的端的同步表数据一致。装载前源端DMHS服务和目的端DMHS服务都需要开启,按以下顺序进行(一定要按顺序执行!!),具体的步骤如下:

(1)开启DM8目的端DMHS服务:
进入/home/dmdba/dmhs/bin目录,命令:
./dmhs_server

如图:
在这里插入图片描述

(2)启动DM8目的端捕获器:
进入/home/dmdba/dmhs/bin目录,命令:
./dmhs_console
connect
start exec

如图:
在这里插入图片描述

(3)开启Oracle源端DMHS服务:
使用oracle用户,进入/home/dmhs/bin目录,命令:
./dmhs_server

如图:
在这里插入图片描述

(4)在Oracle源端进行初始装载:
进入/home/dmhs/bin目录,命令:
./dmhs_console
connect
clear exec lsn
copy 0 “SCH.NAME=‘DMHS’” DICT|LSN|CREATE|INSERT|INDEX
start cpt

如图:
在这里插入图片描述
在这里插入图片描述
至此,Oracle11g至DM8的DMHS搭建成功,可以开始进行数据同步。

2.4 简单数据同步测试

测试(1):
Oracle源端建立新表并插入数据,查询目的端
Oracle源端如图:
在这里插入图片描述
DM8目的端如图:
在这里插入图片描述

测试(2):
Oracle源端创建视图,目的端查询视图后,在源端删除视图
Oracle源端创建:
在这里插入图片描述
DM8目的端查询:
在这里插入图片描述
Oracle源端删除视图:
在这里插入图片描述
DM8目的端查询:
在这里插入图片描述
测试结束,数据和DDL操作同步成功。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值