初步学习了一下达梦的dmhs同步工具,本人觉得还是很好用的,下面为大家详细介绍一下我在自己的虚拟机上搭建的过程。
- 环境信息
1.1 源端库
IP地址 192.168.163.133
操作系统版本 中标麒麟7.4
操作系统登录信息 root/123 dmdba/123
达梦数据库安装包 dm8_setup_rh7_64_ent_8.1.1.56_20191223.iso
1.2 目的端库
IP地址 192.168.163.134
操作系统版本 中标麒麟7.4
操作系统登录信息 root/123 dmdba/123
达梦数据库安装包 dm8_setup_rh7_64_ent_8.1.1.56_20191223.iso
1.3 DMHS环境
Linux版本 安装包:dmhs_V3.1.3_dm8_rev90484_rh7_64_veri_20200426.bin
源端库 安装路径:/home/dmhs
前台启动脚本:/home/dmhs/bin目录下执行:./dmhs_server
管理端口:5345
数据端口:5346
目的端库 安装路径:/home/dmhs
前台启动脚本:/home/dmhs/bin目录下执行:./dmhs_server
管理端口:5345
数据端口:5346
2 双方环境检查
2.1源端DM8数据库配置
环境检查
-
首先查看源端归档是否开启
select * from v$dm_ini where para_name=‘ARCH_INI’;
或者查看dm.ini 文件中ARCH_INI=1,若 ARCH_INI 为 0,则需要配置 dmarch.ini 文件,配置如下:
[ARCHIVE_LOCAL1]
ARCH_TYPE= LOCAL
ARCH_DEST= /home/dmdba/dmdbms/arch(根据实际情况配置归档路径)
ARCH_FILE_SIZE= 128 (根据实际情况配置文件大小)
ARCH_SPACE_LIMIT= 0(根据实际情况配置大小限制) -
创建辅助表
使用DM管理工具连接192.168.163.133,端口号5236,账号密码SYSDBA/密码
cd /home/dmdba/dmdbms/tool
./manager
使用管理工具执行/home/dmdata/dmhs/scripts/ddl_sql_dm7.sql脚本,新增DDL触发器。 -
开启逻辑附加日志
在数据库执行以下2个sql开启逻辑日志功能,执行成功后,重启数据库服务生效。
sp_set_para_value(2,‘RLOG_APPEND_LOGIC’,1);
–重启完成后,查询验证参数是否生效
select para_value from v$dm_ini where para_name='RLOG_APPEND_LOGIC’;
2.2目的端DM8配置
前提条件是安装好DM8数据库和同步软件。
2.3 DMHS同步工具安装
1.启动安装程序
启动时,先确认安装程序是否有执行权限,如果没有使用chmod 777 dmhs_V3.1.3_dm8_rev90484_rh7_64_veri_20200426.bin进行授权。
2.选择安装语言
3.进入安装向导
4.接受许可证协议
5.选择授权文件,没有的可以直接跳过,选择免费版
6.选择安装类型和安装目录
7.查看安装小结
8.显示安装进度
9.配置Guard数据库
10.配置安装服务
2.4 执行端DM8同步工具配置
- 安装dmhs环境以后,首先配置环境变量,在.bash_profile配置文件新增:
export LD_LIBRARY_PATH= L D L I B R A R Y P A T H : / h o m e / d m h s / b i n e x p o r t L D L I B R A R Y P A T H = LD_LIBRARY_PATH:/home/dmhs/bin export LD_LIBRARY_PATH= LDLIBRARYPATH:/home/dmhs/binexportLDLIBRARYPATH=LD_LIBRARY_PATH:/home/dmdba/dmdbms/bin - 在root用户下使用chown –R dmdba:dinstall /home/dmhs 修改目录所属用户和组;
- 在/home/dmhs/bin目录下新增dmhs.hs配置,具体的配置见:3.1附录1-dmhs.hs配置;
- 配置完成以后,在/home/dmhs/bin目录下执行./dmhs_server,开启dmhs的服务脚本;
- 启动dmhs服务以后,开启新窗口在/home/dmhs/bin目录下执行:./dmhs_console,连接执行端控制台,执行:connect 192.168.163.134:5345,然后启动exec服务,执行start exec
2.5 捕获端同步工具配置 - 安装dmhs环境以后,首先配置环境变量,在.bash_profile配置文件新增:
export LD_LIBRARY_PATH= L D L I B R A R Y P A T H : / h o m e / d m h s / b i n e x p o r t L D L I B R A R Y P A T H = LD_LIBRARY_PATH:/home/dmhs/bin export LD_LIBRARY_PATH= LDLIBRARYPATH:/home/dmhs/binexportLDLIBRARYPATH=LD_LIBRARY_PATH:/home/dmdba/dmdbms/bin - 在root用户下使用chown –R dmdba:dinstall /home/dmhs 修改目录所属用户和组;
- 在/home/dmhs/bin目录下新增dmhs.hs配置,具体的配置见:3.2附录2-dmhs.hs;
- 配置完成以后,在/home/dmhs/bin目录下执行./dmhs_server,开启dmhs的服务脚本;
- 启动dmhs服务以后,开启新窗口在/home/dmhs/bin目录下执行:./dmhs_console,连接执行端控制台,拷贝数据字典,装载数据。
3附录
3.1附录1 – 目的端dmhs.hs配置
<?xml version="1.0" encoding="GB2312" standalone="no"?><base> <lang>ch</lang> <mgr_port>5345</mgr_port> <ckpt_interval>60</ckpt_interval> <siteid>2</siteid> <version>2.0</version> </base> <exec> <recv> <mgr_port>5345</mgr_port> <data_port>5346</data_port> </recv> <enable>1</enable> <name>exec</name> <check_index>1</check_index> <check_col_exist>0</check_col_exist> <db_type>DM8</db_type> <db_server>192.168.163.134</db_server> <db_user>SYSDBA</db_user> <db_pwd>SYSDBA</db_pwd> <db_port>5236</db_port> <exec_policy>2</exec_policy> </exec> </dmhs>
3.2附录2 – 源端dmhs.sh配置
<?xml version="1.0" encoding="GB2312" standalone="no"?>
<dmhs>
<base>
<lang>ch</lang>
<mgr_port>5345</mgr_port>
<ckpt_interval>60</ckpt_interval>
<siteid>1</siteid>
</base>
<cpt>
<db_type>DM8</db_type>
<db_server>192.168.163.133</db_server>
<db_user>SYSDBA</db_user>
<db_pwd>SYSDBA</db_pwd>
<db_port>5236</db_port>
<idle_time>10</idle_time>
<parse_thr>1</parse_thr>
<ddl_mask>OP:OBJ:REC</ddl_mask>
<arch>
<clear_interval>60</clear_interval>
<clear_flag>0</clear_flag>
</arch>
<send>
<ip>192.168.163.134</ip>
<mgr_port>5345</mgr_port>
<data_port>5346</data_port>
<net_turns>0</net_turns>
<trigger>1</trigger>
<constraint>1</constraint>
<identity>1</identity>
<filter>
<enable>
<item>DMDBA.*</item>
</enable>
<disable/>
</filter>
<map>
</map>
</send>
</cpt>
</dmhs
以上的配置参数可以作为借鉴,详细的参数详情可以参考安装目录下的/home/dmhs/doc<DMHS搭建手册><DMHS参考手册>,希望能帮到各位,欢迎来踩!