KingbaseES V8R6 运维案例之---数据库连接访问故障分析

发布时间 2023-09-18 15:53:37作者: KINGBASE研究院
           KingbaseES V8R6运维案例之---数据库连接访问故障分析

案例说明:
在部署KingbaseES V8R6后,正常启动数据库服务,但是通过ksql连接数据库服务访问时,出现连接到postgresql socket的错误提示,如下图所示:

适用版本:
KingbaseES V8R6

一、问题分析
1、执行ksql远程连接

如下图所示,通过-h参数执行ksql远程连接时,出现以下故障:

2、查看防火墙及sys_hba.conf配置

如下图所示,sys_hba.conf支持ksql的本地socket和远程网络连接,并且如上图所示,防火墙已经关闭。

3、初始化新的实例连接访问

如下图所示,ksql连接错误一致。

4、测试sys_dump工具连接

如下图所示,通过sys_dump连接,与ksql连接访问错误一致。

5、ldd查看ksql动态库链接

如下图所示,正常环境ksql动态库链接,和上面异常环境相比,部分动态库加载位置不同。

二、问题解决

1、配置数据库用户LD_LIBRARY_PATH变量
如下图所示,在.bash_profile配置LD_LIBRARY_PATH变量后,ksql的动态库链接位置发生了变化。

2、执行ksql连接数据库访问正常

三、总结
此次故障由数据库可执行文件动态库的加载而引起,触发了很隐蔽的故障问题,在生产环境,需在数据库用户的.bashrc或.bash_profile文件中配置LD_LIBRARY_PATH参数,避免触发这样的隐蔽故障。