签到成功

知道了

CNDBA社区CNDBA社区

达梦8 DMHS libdmoci.so 依赖包 问题说明

2023-02-01 18:43 2100 0 原创 DM 达梦
作者: dave

1 故障现象说明

在搭建DMHS 同步的时候,如果libdmoci.so 包版本不对,可能会遇到如下问题:

1.1 问题1

日志报错:http://www.cndba.cn/cndba/dave/article/116424

2021-08-25 13:12:09 MGR[INFO]: 正在加载DM8日志分析模块...
2021-08-25 13:12:09 MGR[ERROR]: 库文件 libcpt_dm8.so 未找到, 出错: 0
2021-08-25 13:12:09 MGR[INFO]: 来自 192.168.138.17 的连接已经断开!

查询目录下有这个文件

[dave@www.cndba.cn ~]# find /dmhs -name libcpt_dm8.so
/dmhs/bin/libcpt_dm8.so
/dmhs/bin2/libcpt_dm8.so
/dmhs/INST_HS/cpt17/libcpt_dm8.so

ldd查看

缺少libdmoci.so

1.2 问题2

DMHS 控制台执行目录无响应,源端和目标段都一样,并在目标端启动执行器时候,无法启动,一直卡主, cpu还持续保持在99%。
http://www.cndba.cn/cndba/dave/article/116424

1.3 问题3

日志报错

2021-08-25 14:01:30 MGR[ERROR]: 无法连接到目的端192.168.138.18:5345的管理模块

2 解决方法

以上3个问题都是dmhs 自带的libdmoci.so 版本不对导致的。老版本dmhs自带libdmoci.so(DM7 版本),新版本(DM8)不带libdmoci.so,需要单独向原厂申请。http://www.cndba.cn/cndba/dave/article/116424http://www.cndba.cn/cndba/dave/article/116424

libdmhs_exec.so需要链接的是对目的数据库操作的库文件libdmoci.so,也就是dm8的libdmoci.so。然而dmhs下的db/bin是DMHS内置元数据库dm7的路径,也就是说此时执行器链接的是dm7的libdmoci.so所以执行异常。

http://www.cndba.cn/cndba/dave/article/116424

实际上dm8默认的安装文件中也并没有包含libdmoci.so文件, 因为dm8的bin文件安装中并不包含oci接口库。 因此对DM8 安装配置DMHS 必须向原厂申请对应版本的dmdci.zip文件,解压dmdci.zip后复制库文件libdmoci.so和以及include文件到dm8/bin下对应位置即可使用。

http://www.cndba.cn/cndba/dave/article/116424
http://www.cndba.cn/cndba/dave/article/116424http://www.cndba.cn/cndba/dave/article/116424

操作成功以后,在验证环境变量: LD_LIBRARY_PATH=/dm8/bin:/usr/local/lib 是否准确,这样就不应再使用内置元数据库dm7的依赖库。http://www.cndba.cn/cndba/dave/article/116424

操作示例:http://www.cndba.cn/cndba/dave/article/116424

[dave@www.cndba.cn software]$ cd dmoci/
[dave@www.cndba.cn dmoci]$ ls
include  libcrypto.so  libdmdpi.so  libdmfldr.so  libdmoci.a  libdmoci.so  libssl.so
[dave@www.cndba.cn dmoci]$ ll
total 44716
drwxr-xr-x 2 dmdba dinstall       32 Feb  1 15:33 include
-rw-r--r-- 1 dmdba dinstall  3243641 Feb  1 15:33 libcrypto.so
-rw-r--r-- 1 dmdba dinstall  9791700 Feb  1 15:33 libdmdpi.so
-rw-r--r-- 1 dmdba dinstall  9534592 Feb  1 15:33 libdmfldr.so
-rw-r--r-- 1 dmdba dinstall 12144270 Feb  1 15:33 libdmoci.a
-rw-r--r-- 1 dmdba dinstall 10383731 Feb  1 15:33 libdmoci.so
-rw-r--r-- 1 dmdba dinstall   682709 Feb  1 15:33 libssl.so
[dave@www.cndba.cn dmoci]$ chmod 755 * -R
[dave@www.cndba.cn dmoci]$ cp -r * /dm/dmdbms/bin/
[dave@www.cndba.cn dmoci]$

添加依赖包之后,DMHS 可以正常运行。

版权声明:本文为博主原创文章,未经博主允许不得转载。

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
dave

dave

关注

人的一生应该是这样度过的:当他回首往事的时候,他不会因为虚度年华而悔恨,也不会因为碌碌无为而羞耻;这样,在临死的时候,他就能够说:“我的整个生命和全部精力,都已经献给世界上最壮丽的事业....."

  • 2283
    原创
  • 3
    翻译
  • 579
    转载
  • 196
    评论
  • 访问:8180172次
  • 积分:4428
  • 等级:核心会员
  • 排名:第1名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ