问题描述:

`
在使用DBeaver或者其他数据库软件时连接远程服务器pg数据库时报错:FATAL: no pg_hba.conf entry for host “xxx”, user “xx”, dadatabase “xx”,SSL on问题。


解决方案1:

最可能出现的问题:
远程服务器没有放通pg数据库端口,例如默认端口5432未放通,那么我们需要在pg数据库服务器中输入一下命令即可解决问题:

sudo ufw allow 5432/tcp

解决方案2:

编辑远程服务器 pg_hba.conf 文件:

/etc/postgresql/<version>/main/pg_hba.conf

需要在远程 PostgreSQL 服务器上编辑 pg_hba.conf 文件,添加一个允许从客户端 IP 地址(即 132.127.xxx.xxx)连接的规则。

打开 pg_hba.conf 文件并添加一行配置,允许 132.127.xxx.xxxIP 地址的 admin1 用户从远程连接到 cardb 数据库。

host    db_name    user_name    132.127.xxx.xxx/32    md5

修改完 pg_hba.conf 文件后,需要重启 PostgreSQL 服务使更改生效。可以使用以下命令重启 PostgreSQL 服务:

sudo systemctl restart postgresql


此外,确保 PostgreSQL 启用了允许远程连接的配置,特别是 listen_addresses 设置。如果使用的是 PostgreSQL 14 或更新版本,可以检查 postgresql.conf 文件中的以下设置:
listen_addresses:确保该值为 * 或者包含你希望允许的 IP 地址,表示 PostgreSQL 将监听所有的网络接口或者特定的接口。

listen_addresses = '*'

实测以上解决方案可以解决遇到的客户端连接pg服务器问题

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐