适用范围

MogDB 5.0.7+

问题概述

cm_ctl stop关闭异常,报错python3: error while loading shared libraries: libpython3.7m.so.1.0。

[omm@testdb2 ~]$ cm_ctl stop
cm_ctl: stop cluster.
cm_ctl: stop nodeid: 1
cm_ctl: stop nodeid: 2
python3: error while loading shared libraries: libpython3.7m.so.1.0: cannot open shared object file: No such file or directory
cm_ctl: end check cluster pssh result 127, disConNode 0, normalNode 0, stoppedNode 0, stoppingNode 0, failedNode 0, uninstallNode 0.

问题原因

不能通过LD_LIBRARY_PATH 设置python3的环境变量,pssh脚本运行的时候会把这个环境变量清空,因为如果不清空,使用数据库的Lib库,会导致ssh不可用。

vi /etc/profile
export PATH
export LD_LIBRARY_PATH=/usr/local/python3/lib:$LD_LIBRARY_PATH:.  

. /etc/profile

这种方式已经不适用。

解决方案

1、在 /etc/ld.so.conf.d 目录下新建了一个 python3.conf 的文件,在这个文件里把 python3 的lib目录写进去。

vi /etc/ld.so.conf.d/python3.conf
/usr/local/python3/

2、然后执行ldconfig刷新 ldconfig 的缓存

[root@testdb2 cm_agent]# ldconfig -p |grep libpython3
        libpython3.7m.so.1.0 (libc6,x86-64) => /usr/local/python3/lib/libpython3.7m.so.1.0
        libpython3.7m.so (libc6,x86-64) => /usr/local/python3/lib/libpython3.7m.so
        libpython3.so (libc6,x86-64) => /usr/local/python3/lib/libpython3.so

3、执行cm_ctl stop

本文由mdnice多平台发布


老许的数据库
1 声望0 粉丝

云和恩墨资深Oracledba,有12年左右的金融、保险、政府、地税、运营商等业务关键型系统的运维经验,曾担任公司异常恢复东区接口人,负责紧急异常恢复工作,目前负责pg、openGauss/MogDB运维、国产化 MogDB 数据库...