首页数据库解决postgreSql远程连接数据库超时的问题

解决postgreSql远程连接数据库超时的问题

时间2024-02-29 13:37:04发布访客分类数据库浏览225
导读:收集整理的这篇文章主要介绍了解决postgreSql远程连接数据库超时的问题,觉得挺不错的,现在分享给大家,也给大家做个参考。 首先在cmd中ping 这个ip如果发现可以ping通就可...
收集整理的这篇文章主要介绍了解决postgreSql远程连接数据库超时的问题,觉得挺不错的,现在分享给大家,也给大家做个参考。

首先在cmd中ping 这个ip如果发现可以ping通就可以考虑是 远程数据库开启了防火墙、或者数据库设置该ip不能访问。

防火墙问题:可以考虑直接关闭防火墙,或者设置防火墙开放5432端口

然后到postgreSQL安装目录下data中修改pg_hba.conf文件,配置用户的访问权限,拉到底部

host all all 127.0.0.1/32 trusthost all all 192.168.1.0/24 md5 #表示允许网段192.168.1.0上的所有主机使用所有合法的数据库用户名#访问数据库,并提供加密的密码验证host all all 0.0.0.0/0 md5 #表示允许所有主机使用所有合法的数据库用户名访问数据库,并提供加密的#密码验证。数字24是子网掩码,表示允许192.168.1.0–192.168.1.255的计算机访问!

修改postgresql.conf文件

定位到#listen_addresses 一般都是默认为*,不是就改成*

然后重启postgresql服务

补充:postgresql远程连接中断的解决

在阿里云安装了postgresql以后,上班时间连接公司网络,本地连接pg数据库,隔几分钟就会自动断开连接,很浪费开发效率,

比较郁闷的是,下班时间连接家里的网络就没有问题,

研究了一段时间后,最终通过设置TCP的keepalive让问题得到解决

[root@localhost ~]# Sysctl -A | grep net.ipv4.tcp_keepalivesysctl: reading key "net.IPv6.conf.all.stable_secret"net.ipv4.tcp_keepalive_intvl = 75net.ipv4.tcp_keepalive_PRobes = 9net.ipv4.tcp_keepalive_time = 7200

- net.ipv4.tcp_keepalive_time - 在第一次keep alive请求发送后,不活动连接的时间

- net.ipv4.tcp_keepalive_probes - 在这个连接被认为是断开之前,keep alive请求被重发的次数

- net.ipv4.tcp_keepalive_intvl - keep alive探测的时间间隔

默认的超时设置太长,如果外网网络状况不佳,可能会导致连接断掉,

所以让pg更频繁地发出探测数据包来保持tcP连接:

[root@localhost ~]# sysctl -w net.ipv4.tcp_keepalive_time=60 net.ipv4.tcp_keepalive_probes=3 net.ipv4.tcp_keepalive_intvl=10

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。

您可能感兴趣的文章:
  • postgresql修改完端口后直接psql连接数据库报错的解决
  • postgres 连接数查看与设置操作

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 解决postgreSql远程连接数据库超时的问题
本文地址: https://pptw.com/jishu/632934.html
PostgreSQL 设置允许访问IP的操作 PostgreSQL中Slony-I同步复制部署教程

游客 回复需填写必要信息