目录
4.源端执行clear exec lsn 失败,报错:加载日志分析模块失败
一、DMHS搭建
环境配置:
源端:10.9.13.10
目的端:10.9.13.13
1.配置源端数据库环境
(1)开启源端和目的端数据库服务;
(2)开启源端归档;
alter database mount;
alter database add archivelog ‘dest=/home/dmdba/dm8/arch,type=local,file_size=128,file_limit=1024’;
alter database archivelog;
alter database open;
(3)开启逻辑附加日志(若不开启,start cpt的时候会报错)
在数据库执行以下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.目的端DMHS安装
目的端数据库需要安装完整版
在安装DMHS的时候内置数据库路径需要选择安装的DM8数据库路径
目的端DM8数据库路径:/home/data/dm8/bin
在/home/data/dm8/bin路径下,开启目的端数据库服务
在/home/data/dmhs/db/bin开启目的端DmServiceHSDB服务
在/home/data/dmhs/web/bin开启目的端DmhsWebService服务
在/home/data/dmhs/hs_agent开启目的端DmhsAgentServiceHsAgent服务
3.目的端DMHS配置
输入账号admin,密码888888,启动DMHS管理平台
添加DMHS目的端实例:
配置完成后生成
启动执行器exec
4.源端DMHS安装
源端数据库安装精简版即可,源端内置数据库IP选择10.9.13.13
在安装DMHS的时候内置数据库路径需要选择安装的DM8数据库路径
源端:/home/dmdba/dm8/bin
5.源端DMHS配置
修改捕获器cpt的配置:
在源端实例的控制台中执行
clear exec lsn
装载数据
COPY 0 "SCH.NAME='SYSDBA'" CREATE|INSERT
此时可以看到源端日志:
目的端日志:
启动源端捕获器:
此时可以看到源端日志:
目的端日志:
此时DMHS搭建完成。
二、DMHS报错整理
1.执行DMHS安装文件报错:权限问题
授予文件可读可写权限,然后再进行安装即可。
chmod -R 755 dmhs_V4.1.2_dm8_rev100195_rh6_64_veri_20210618_pack2.bin
2.目的端执行器启动失败
查看web管理器的报错:
查看执行器报错信息:
[root@localhost exec0]# ldd libdmhs_exec.so
linux-vdso.so.1 (0x00007ffd615e0000)
libc.so.6 => /lib64/libc.so.6 (0x00007f0f253b6000)
libm.so.6 => /lib64/libm.so.6 (0x00007f0f25233000)
librt.so.1 => /lib64/librt.so.1 (0x00007f0f25228000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f0f25207000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f0f25202000)
libdmhs_pub.so => ./libdmhs_pub.so (0x00007f0f24ed6000)
libdmhs_ucvt.so => ./libdmhs_ucvt.so (0x00007f0f24979000)
libdmhs_dm_obj.so => ./libdmhs_dm_obj.so (0x00007f0f24764000)
libdmhs_cvt.so => ./libdmhs_cvt.so (0x00007f0f244db000)
/lib64/ld-linux-x86-64.so.2 (0x00007f0f25943000)
libdodbc.so => not found
libdmhs_exp.so => ./libdmhs_exp.so (0x00007f0f24106000)
libdmhs_xml.so => ./libdmhs_xml.so (0x00007f0f23ef5000)
libdmoci.so => not found
发现找不到libdodbc.so和 libdmoci.so,但是在../dmhs/db/bin目录下有libdmoci.so文件,于是在环境变量中将路径加进去,发现还是不行。
后来发现是理解有误,真实问题所在:
执行启的链接应该对应的是目的数据库的libdmoci.so文件,不是DMHS内置元数据库dm7的路径,也就是说,现在执行的是dm7的libdmoci.so,所以执行异常。
而dm8本身是没有oci接口的,需要一个dmdci.zip文件,解压dmdci.zip后复制需要的库文件libdmoci.so和以及include文件到dm8/bin下对应位置即可使用。同时修改环境变量配置。
总结:在安装源数据库或者目的数据库时应装上oci接口库,再使用DMHS连接它。DMHS连接源数据库或者目的数据库依赖于安装DMHS时配置的NEED_LIB_PATH,这个路径注意不要和内置数据库的依赖库搞混。
3.web客户端读取不到源端的数据库模式
捕获器的过滤规则里面看不到源数据库的模式
首先检查源数据库服务是否开启,只有数据库服务开启,DMHS才能读取到源端数据库模式
其次检查数据库类型选择是否正确,由于我的源数据库是MPP集群的一个节点,所以数据库类型应该选择DM8_MPP_LOCAL
4.源端执行clear exec lsn 失败,报错:加载日志分析模块失败
发现是缺少库文件libcpt_dm8.so,但DMHS安装目录下有libcpt_dm8.so文件
查看环境变量配置文件,发现环境变量没有修改成功。
5.源端启动捕获器失败
报错:没有逻辑附加日志
发现是忘记配置源数据库的逻辑附加日志了,配置完成后,操作成功。
更多问题欢迎到达梦云适配社区提问哦!首页 | 达梦云适配中心 (dameng.com)