暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

jdbc连mogdb连接报FATAL: no pg_hba.conf entry for host "172.20.22.253".

原创 由迪 2023-12-04
879

原作者:银醇超

适用范围

所有版本

问题概述

通过openvpn连接服务器,安装了mogdb,创建了用户,想用dbeaver连接DB,用的是PG的原生驱动,但测试连接时报错:

FATAL: no pg_hba.conf entry for host “172.20.22.253”.

无法连接;

问题原因

根据这个pg_hba.conf报错,大致原因是pg_hba.conf没有配置客户端IP,查看本机IP:192.168.0.130,采用:

gs_guc set -N all -I all -h “host all ycc 192.168.0.130/32 sha256”

[omm@tbase3 ~]$ gs_guc set -N all -I all -h "host all ycc 192.168.0.130/32 sha256"
The gs_guc run with the following arguments: [gs_guc -N all -I all -h host all ycc 192.168.0.130/32 sha256 set ].
Begin to perform the total nodes: 1.
Popen count is 1, Popen success count is 1, Popen failure count is 0.
Begin to perform gs_guc for datanodes.
Command count is 1, Command success count is 1, Command failure count is 0.

Total instances: 1. Failed instances: 0.
ALL: Success to perform gs_guc!
复制

但连接仍然报错;

报错的172.20.22.253这个IP一开始不清楚从哪来,后面检查了openvpn的信息,明白了这个是vpn分配的IP,是服务器的真正客户IP,所以改成了这个IP再试:

gs_guc set -N all -I all -h “host all ycc 172.20.22.253/32 sha256”

但连接还是报错,直接找另一台服务器用telnet来测试,发现也是报错:

[root@OceanBase1 ~]# telnet 172.20.22.112 26000
Trying 172.20.22.112...
Connected to 172.20.22.112.
Escape character is '^]'.
EOSFATALc0Mno pg_hba.conf entry for host "172.20.22.107".C28000dBACKENDConnection closed by foreign host.
复制

原来PG改了这个文件,都是要重新加载的,会不会gs_guc设置之后,也是没有生效,还是需要重新加载的呢?

$ gs_ctl reload
[2023-08-03 20:30:31.658][1391][][gs_ctl]: gs_ctl reload ,datadir is /opt/mogdb/data 
复制

再测就正常了:

[root@OceanBase1 ~]# telnet 172.20.22.112 26000
Trying 172.20.22.112...
Connected to 172.20.22.112.
Escape character is '^]'.
复制

解决方案

解决方案就是先gs_gus增加客户端iP配置,然后再重新加载配置;

这里有一个错觉就是以为gs_gus工具配置会自动生效(无需手动重载步骤);

第二点注意点是,VPN环境,要注意真正的客户端IP,实际上是有一层中转的;

参考文档

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论