PG数据库(Postgresql)解决远程易掉线问题

当连接云上的PG数据库,即通过外网连接PG数据库,经常发现在改完数据后,保存时弹出连接已经断开错误。其实这是由于电信服务商偷懒造成的,一般电信服务商在一个TCP连接没有任何往来数据长达1分钟以上,会自动切断此连接。解决办法也很简单,让PG数据库对连接启用TCP协议的心跳机制,打破沉默,避免被电信服务商误杀。

由于时间久远,忘了怎么安装的,先检查一下数据库的安装信息:
systemctl status postgres*
返回的结果包含了版本信息,和数据目录:

● postgresql-9.6.service - PostgreSQL 9.6 database server
   Loaded: loaded (/usr/lib/systemd/system/postgresql-9.6.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2021-01-15 17:12:16 CST; 1min 34s ago
     Docs: https://www.postgresql.org/docs/9.6/static/
  Process: 55858 ExecReload=/bin/kill -HUP $MAINPID (code=exited, status=0/SUCCESS)
  Process: 55923 ExecStartPre=/usr/pgsql-9.6/bin/postgresql96-check-db-dir ${PGDATA} (code=exited, status=0/SUCCESS)
 Main PID: 55928 (postmaster)
   CGroup: /system.slice/postgresql-9.6.service
           ├─55928 /usr/pgsql-9.6/bin/postmaster -D /pgdata/

则数据目录是在/pgdata/,进入,并修改配置文件
cd /pgdata/ && vim postgresql.conf

将以下三处的前面#去掉,并且把默认值0换成如下
tcp_keepalives_idle = 20 #20秒主动发心跳
tcp_keepalives_interval = 10 #10秒未收到返回心跳则本心跳失败
tcp_keepalives_count = 3 #连续3次心跳失败则主动断线

然后重启PG数据库即可
systemctl restart postgresql-9.6

  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值