如何让Postgres接受远程连接
问题描述:
我想建立一个Postgres服务器,我需要它能够接受远程连接。如何让Postgres接受远程连接
当我做来自客户端的远程连接,我继续有这个错误:
Connection to 192.168.1.6:5432 refused.
Check that the hostname and port are correct and that the postmaster is accepting TCP/IP
我已经编辑的文件pg_hba.conf
这些行:
host all all 0.0.0.0/0 md5
和
host all all ::/0 md5
为了接受每个远程连接。
我还编辑了文件postgresql.conf
,将监听地址设置为*
。
我该如何解决这个问题?
答
ssh到你的服务器,并发出命令netstat -tlpn | grep 5432
你应该得到类似的输出
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 31309/postmaster tcp 0 0 :::5432 :::* LISTEN 31309/postmaster
这意味着Postgres的就是准备接受在端口5432的远程连接,否则,你需要重新检查听PostgreSQL中参数.conf并重新启动postgresql群集(不重新加载)。 如果仍然无法进行远程访问,请尝试暂时禁用服务器和客户端上的防火墙iptables -F
错误消息指示“检查主机名和端口是否正确”。你是否?您的Postgres实例使用端口5432吗? ('SHOW port;')并且是同一网络中的客户端? ('192.168.1.6'是一个局域网地址,在互联网上是不可见的,我假设你知道这一点?)并且在更改'postgresql.conf'后重新加载了吗?如果问题仍然存在,请发布完整的'pg_hba.conf'文件(不包含带引号的部分)。 –