gpt4 book ai didi

postgresql - pgAdmin 到 pgpool 的连接错误

转载 作者:行者123 更新时间:2023-11-29 11:25:52 24 4
gpt4 key购买 nike

我正在使用 pgAdmin III 从客户端管理我的数据库。我有一个以流复制模式运行的主从 postgreSQL。他们前面还有另一个 pgpool 服务器,用于连接池和负载平衡。

当我将 pgAdmin 连接到 pgpool 时,我得到:

Error connecting to the server: ERROR: unable to read message kind
DETAIL: kind does not match between master(52) slot[1] (45)

我之前连接它没问题,但不知何故 pgpool 死了,我重新启动它,然后这个错误突然冒出来。

pgpool 和 postgreSQL 服务器运行良好。我可以使用 psql -h hostname database user 访问它们。应用服务器也可以连接到它,网络应用程序照常运行。我只是无法从 pgAdmin 访问它。

最佳答案

http://www.sraoss.jp/pipermail/pgpool-general/2012-March/000297.html

简而言之:在 postgres 集群上超过了 max_connections

我假设发生了什么 - 你重新启动了 pgpool 并且它打开了到 postgres 的新连接,而旧的连接留在 idleidle in transaction (取决于超时)。所以在重启 pgpool 后它消耗了双倍的量 of num_init_children 并达到实际允许 maximum .

杀死旧的(重启前)pgpool 连接应该可以修复它。尝试在 postgres 上运行 pg_terminate_backend(pid) 以执行此操作。还要小心杀死正确的连接。至少检查一下

select pid,query, client_address 
from pg_stat_activity where now()-query_start > '1 day'::interval

或者只捕捉僵尸

关于postgresql - pgAdmin 到 pgpool 的连接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35464497/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com