KingbaseES V8R6 运维案例 --ksql访问动态库问题
KingbaseES V8R6数据库运维案例之---ksql访问动态库问题
案例说明:
CentOS环境下,在安装和初始化数据库实例后,启动数据库服务,通过ksql连接访问时出现以下故障:

经检查,是缺失动态库'libpq.so.5 '导致。
系统环境:
[kingbase@node102 bin]$ cat /etc/centos-release
CentOS Linux release 7.9.2009 (Core)
适用版本:
KingbaseES V8R6
一、问题现象
[kingbase@node102 bin]$ ./ksql -U system test -p 54321
./ksql: /opt/Kingbase/ES/V8R6_C7/KESRealPro/V008R006C007B0012/Server/bin/../lib/libssl.so.10: no version information available (required by /lib64/libpq.so.5)
./ksql: /opt/Kingbase/ES/V8R6_C7/KESRealPro/V008R006C007B0012/Server/bin/../lib/libcrypto.so.10: no version information available (required by /lib64/libpq.so.5)
./ksql: /opt/Kingbase/ES/V8R6_C7/KESRealPro/V008R006C007B0012/Server/bin/../lib/libcrypto.so.10: no version information available (required by /lib64/libldap_r-2.4.so.2)
./ksql: /opt/Kingbase/ES/V8R6_C7/KESRealPro/V008R006C007B0012/Server/bin/../lib/libcrypto.so.10: no version information available (required by /lib64/libldap_r-2.4.so.2)
./ksql: /opt/Kingbase/ES/V8R6_C7/KESRealPro/V008R006C007B0012/Server/bin/../lib/libssl.so.10: no version information available (required by /lib64/libldap_r-2.4.so.2)
ksql: error: could not connect to server: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.54321"?
---如上所示,ksql无法连接数据库访问,并出现动态库故障。
二、问题分析
1、检查数据库服务状态
[kingbase@node102 bin]$ netstat -an |grep 543
tcp 0 0 0.0.0.0:54321 0.0.0.0:* LISTEN
tcp6 0 0 :::54321 :::* LISTEN
unix 2 [ ACC ] STREAM LISTENING 66234 /tmp/.s.KINGBASE.54321
unix 3 [ ] STREAM CONNECTED 28543
---如上所示,数据库服务运行状态正常,数据库服务端口(54321)处于监听状态。
2、查看ksql动态库链接信息
[kingbase@node102 bin]$ ldd -r ksql
linux-vdso.so.1 => (0x00007ffd8e583000)
libssl.so.10 => /opt/Kingbase/ES/V8R6_C7/KESRealPro/V008R006C007B0012/Server/bin/./../lib/libssl.so.10 (0x00007fab06477000)
libcrypto.so.10 => /opt/Kingbase/ES/V8R6_C7/KESRealPro/V008R006C007B0012/Server/bin/./../lib/libcrypto.so.10 (0x00007fab0604e000)
librt.so.1 => /lib64/librt.so.1 (0x00007fab05e46000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007fab05c0f000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fab05a0b000)
libm.so.6 => /lib64/libm.so.6 (0x00007fab05709000)
libicui18n.so.52 => /opt/Kingbase/ES/V8R6_C7/KESRealPro/V008R006C007B0012/Server/bin/./../lib/libicui18n.so.52 (0x00007fab05294000)
libicuuc.so.52 => /opt/Kingbase/ES/V8R6_C7/KESRealPro/V008R006C007B0012/Server/bin/./../lib/libicuuc.so.52 (0x00007fab04efb000)
libicudata.so.52 => /opt/Kingbase/ES/V8R6_C7/KESRealPro/V008R006C007B0012/Server/bin/./../lib/libicudata.so.52 (0x00007fab0368f000)
libuuid.so.1 => /lib64/libuuid.so.1 (0x00007fab0348a000)
libc.so.6 => /lib64/libc.so.6 (0x00007fab030bc000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fab02ea0000)
libz.so.1 => /lib64/libz.so.1 (0x00007fab02c8a000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007fab02a87000)
/lib64/ld-linux-x86-64.so.2 (0x00007fab066e7000)
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007fab0277f000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fab02569000)
---如上所示,ksql动态库没有出现明显的error信息。
2、查看其他版本ksql的动态库信息
[kingbase@node102 bin]$ ldd -r ksql
linux-vdso.so.1 => (0x00007ffc98b45000)
libpq.so.5 => /home/kingbase/cluster/R6HA/kha/kingbase/bin/./../lib/libpq.so.5 (0x00007f9eacfb5000)
libssl.so.10 => /home/kingbase/cluster/R6HA/kha/kingbase/bin/./../lib/libssl.so.10 (0x00007f9eacd45000)
libcrypto.so.10 => /home/kingbase/cluster/R6HA/kha/kingbase/bin/./../lib/libcrypto.so.10 (0x00007f9eac91c000)
libz.so.1 => /lib64/libz.so.1 (0x00007f9eac706000)
libreadline.so.5 => /home/kingbase/cluster/R6HA/kha/kingbase/bin/./../lib/libreadline.so.5 (0x00007f9eac4ca000)
libtermcap.so.2 => /home/kingbase/cluster/R6HA/kha/kingbase/bin/./../lib/libtermcap.so.2 (0x00007f9eac2c5000)
librt.so.1 => /lib64/librt.so.1 (0x00007f9eac0bd000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f9eabe86000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f9eabc82000)
libm.so.6 => /lib64/libm.so.6 (0x00007f9eab980000)
libc.so.6 => /lib64/libc.so.6 (0x00007f9eab5b2000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f9eab396000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007f9eab193000)
/lib64/ld-linux-x86-64.so.2 (0x00007f9ead1ff000)

---如上图所示,其他版本的ksql中有‘libpq.so.5'的动态库链接信息,而出现故障的ksql中无此动态库链接信息。
3、查看其他版本lib下动态库文件信息
[kingbase@node102 lib]$ ls -lh libpq*
-rwxr-xr-x. 1 kingbase kingbase 330K Feb 16 2022 libpq.so
-rwxr-xr-x. 1 kingbase kingbase 330K Feb 16 2022 libpq.so.5
-rwxr-xr-x. 1 kingbase kingbase 330K Feb 16 2022 libpq.so.5.12
-rwxr-xr-x. 1 kingbase kingbase 26K Feb 16 2022 libpqwalreceiver.so
---当前故障版本的lib目录下,缺失libpq.so.5的动态库文件。
三、问题解决
1、将其他版本的libpq的动态库拷贝到当前版本

2、查看当前版本动态库文件信息
[kingbase@node102 bin]$ cd /opt/Kingbase/ES/V8R6_C7/Server/lib
[kingbase@node102 lib]$ ls -lh libpq*
-rw-r-xr-x 1 kingbase kingbase 330K Feb 1 10:50 libpq.so
-rw-r-xr-x 1 kingbase kingbase 330K Feb 1 10:50 libpq.so.5
-rw-rw-r-- 1 kingbase kingbase 335K Oct 28 19:39 libpq.so.5.12
-rw-rw-r-- 1 kingbase kingbase 26K Oct 28 19:39 libpqwalreceiver.so
#授权文件可执行权限
[kingbase@node102 lib]$ chmod u+x *
[kingbase@node102 lib]$ ls -lh libpq*
-rwxr-xr-x 1 kingbase kingbase 330K Feb 1 10:50 libpq.so
-rwxr-xr-x 1 kingbase kingbase 330K Feb 1 10:50 libpq.so.5
-rwxrw-r-- 1 kingbase kingbase 335K Oct 28 19:39 libpq.so.5.12
-rwxrw-r-- 1 kingbase kingbase 26K Oct 28 19:39 libpqwalreceiver.so
3、查看当前版本ksql动态库链接信息
[kingbase@node102 lib]$ cd ../bin
[kingbase@node102 bin]$ ldd -r ksql
linux-vdso.so.1 => (0x00007ffc680b9000)
libpq.so.5 => /opt/Kingbase/ES/V8R6_C7/KESRealPro/V008R006C007B0012/Server/bin/./../lib/libpq.so.5 (0x00007f853a11a000)
libssl.so.10 => /opt/Kingbase/ES/V8R6_C7/KESRealPro/V008R006C007B0012/Server/bin/./../lib/libssl.so.10 (0x00007f8539eaa000)
libcrypto.so.10 => /opt/Kingbase/ES/V8R6_C7/KESRealPro/V008R006C007B0012/Server/bin/./../lib/libcrypto.so.10 (0x00007f8539a81000)
libz.so.1 => /lib64/libz.so.1 (0x00007f853986b000)
libreadline.so.5 => /opt/Kingbase/ES/V8R6_C7/KESRealPro/V008R006C007B0012/Server/bin/./../lib/libreadline.so.5 (0x00007f853962f000)
libtermcap.so.2 => /opt/Kingbase/ES/V8R6_C7/KESRealPro/V008R006C007B0012/Server/bin/./../lib/libtermcap.so.2 (0x00007f853942a000)
librt.so.1 => /lib64/librt.so.1 (0x00007f8539222000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f8538feb000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f8538de7000)
libm.so.6 => /lib64/libm.so.6 (0x00007f8538ae5000)
libc.so.6 => /lib64/libc.so.6 (0x00007f8538717000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f85384fb000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007f85382f8000)
/lib64/ld-linux-x86-64.so.2 (0x00007f853a364000)

---如上图所示,ksql已经建立和'libpq'的动态库链接。
4、ksql连接访问
[kingbase@node102 bin]$ ./ksql -U system test
ksql (V8.0)
Type "help" for help.
test=#
---如上所示,ksql可以正常连接访问。
四、总结
1、对于以上故障问题,生产环境下,可以尝试重新安装数据库软件来解决。
2、如果存在其他V8R6的版本,可以尝试按照以上方案处理解决。
KingbaseES V8R6 运维案例 --ksql访问动态库问题的更多相关文章
- KingbaseES V8R6备份恢复案例之---自定义表空间指定恢复目录数据恢复
案例说明: KingbaseES V8R6在通过sys_rman执行物理备份恢复时,可以通过参数'--kb1-path',指定恢复的数据(data)目录,但如果原备份中包含自定义表空间时,需要建立表空 ...
- KingbaseES V8R6集群运维案例之---repmgr standby promote应用案例
案例说明: 在容灾环境中,跨区域部署的异地备节点不会自主提升为主节点,在主节点发生故障或者人为需要切换时需要手动执行切换操作.若主节点已经失效,希望将异地备机提升为主节点. $bin/repmgr s ...
- KingbaseES V8R6集群管理运维案例之---repmgr standby switchover故障
案例说明: 在KingbaseES V8R6集群备库执行"repmgr standby switchover"时,切换失败,并且在执行过程中,伴随着"repmr stan ...
- 运维案例 | Exchange2010数据库损坏的紧急修复思路
关注嘉为科技,获取运维新知 Exchange后端数据库故障,一般都会是比较严重的紧急故障,因为这会直接影响到大面积用户的正常使用,而且涉及到用户数据.一旦遇到这种级别的故障,管理员往往都是在非常紧 ...
- KingbaseES V8R6备份恢复案例之--删除test数据库后sys_backup.sh备份
案例说明: KingbaseES V8R6通过sys_backup.sh执行物理备份,默认sys_backup.sh执行备份初始化时,需要连接test数据库进行身份的认证:在一些生产环境为了安全需求, ...
- KingbaseES V8R6备份恢复案例之---同一数据库创建不同stanza备份
案例说明: 在生产环境,有的应用需要调用数据库的sys_rman做备份,为了区分数据库自身的sys_rman备份和应用的备份,可以使用不同的stanza name创建备份.本案例介绍了,如何在King ...
- KingbaseES V8R6 维护管理案例之---Kstudio在CentOS 7启动故障
案例说明: 在CentOS 7上安装KingbaseES V8R6C006数据库后,启动Kstudio图形界面启动失败,gtk动态库加载失败,安装gtk相关动态库后,问题解决. 适用版本: Kin ...
- KingbaseES V8R6备份恢复案例之---手工清理冗余历史备份
案例说明: 对于KingbaseES V8R6的通过sys_rman执行的物理历史备份,可以在执行备份时,备份的保留(retention)策略自动清理.不能通过手工删除备份,可以通过expire参数手 ...
- Linux运维工程师面试-部分题库
一.Linux操作系统知识 1.常见的Linux发行版本都有什么?你最擅长哪一个?它的官网网站是什么?说明你擅长哪一块? 2.Linux开机启动流程详细步骤是什么?系统安装完,忘记密码如何破解? ...
- KingbaseES V8R3集群运维案例之---主库系统down failover切换过程分析
案例说明: KingbaseES V8R3集群failover时两个cluster都会触发,但只有一个cluster会调用脚本去执行真正的切换流程,另一个有对应的打印,但不会调用脚本,只是走相关的 ...
随机推荐
- Swoole从入门到入土(5)——TCP服务器[异步任务]
无论对于B/S还是C/S,程序再怎么变,唯一不变的是用户不想等太久的躁动心情.所以服务端对于客户的请求,能有多快就多快.如果服务端需要执行很耗时的操作,就需要异步任务处理机制,保证当前的响应速度不受影 ...
- 解决Burpsuite1.6中文显示乱码问题
说明 最近公司项目被测试团队测试出有越权访问等安全问题,用的是这个Burpsuit工具,我想做软件测试的同学应该很熟悉.那么中间在模拟请求响应过程中发现返回的信息中文是乱码,搜索了一圈发现很多人提供的 ...
- spring boot整合mybatis-plus报错:There is no getter for property named ‘ew‘ in ‘xxx‘
问题说明 spring boot整合mybatis-plus报错:There is no getter for property named 'ew' in 'xxx' 问题解决 XXXmapper. ...
- Java集合框架学习(十三) Collections类详解
Collections类介绍 这个类操作或返回集合的专有静态方法. 它包含多态算法,利用wrappers(封装器)返回指定集合类型的新集合,以及其他一些零散功能. 如果该类的方法引用的集合或类对象为n ...
- 阿里面试:Java开发中,应如何避免OOM
Java内存管理:避免OOM的10个实用小技巧 引言 在Java开发中,OutOfMemoryError(OOM)错误一直是令开发者头疼的问题,也是Java面试中出现核心频率很高的问题. 那么我们究竟 ...
- 【LeetCode哈希表#1】有效的字母异位词+赎金信(数组)
有效的字母异位词 力扣题目链接(opens new window) 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 示例 1: 输入: s = "anagr ...
- 记一次WPF集成SemanticKernel+OneAPI+讯飞星火认知大模型实践
开启OneAPI服务 OneAPI介绍 OpenAI 接口管理 & 分发系统,支持 Azure.Anthropic Claude.Google PaLM 2 & Gemini.智谱 C ...
- 第一篇博客——MarkDown语法
Markdown学习 标题 三级标提 四级标题 字体 Hello World ! 两个星号加粗 Hello World ! 一个星号斜体 Hello World ! Hello World ! 两个波 ...
- 【Azure 应用服务】在App Service中调用外部服务API时需要携带客户端证书,而多次调用的情况下会出现WindowsCryptographicException Keyset does not exist异常
问题描述 在App Service中调用外部服务API时需要携带客户端证书,而多次调用的情况下会出现WindowsCryptographicException Keyset does not exis ...
- 别再低效筛选数据了!试试pandas query函数
数据过滤在数据分析过程中具有极其重要的地位,因为在真实世界的数据集中,往往存在重复.缺失或异常的数据.pandas提供的数据过滤功能可以帮助我们轻松地识别和处理这些问题数据,从而确保数据的质量和准确性 ...