首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PGPOOL从节点处于“等待”状态

PGPOOL从节点处于“等待”状态
EN

Stack Overflow用户
提问于 2020-12-20 17:39:02
回答 1查看 508关注 0票数 0

我正在尝试配置一个带有主设备和从设备的简单pgpool (都在同一台机器上-不同的端口)。每当我通过psql -p 9999进入pgpool并运行show pool_nodes;时,我看到主集群和从集群,但从集群的状态是waiting (它们都在运行)。主备配置为primaryhot_standby进行复制。但是,每当我通过pgpool插入/选择所有内容时,都会通过master...我想说的是,插入将在主数据库中进行,而选择将在从数据库中进行。

代码语言:javascript
复制
su - postgres
mkdir production_server
mkdir slave1
mkdir slave_archive
create new cluster on production_server

changes for those values on postgresql.conf (production_server):
-------------------------------------------------------
wal_level = replica
archive_mode on
listen_address = *
archive_command= cp %p /var/lib/pgsql/slave_archive/%f
port=5435
-------------------------------------------------------

restart the cluster on production_server
pg_basebackup -p 5435 -D /var/lib/pgsql/slave1

changes for those values on postgresql.conf (slave1):
-------------------------------------------------------
port=5466
hot_standby=on
primary_conninfo= host =127.0.0.1 port=5435
restore_command = cp /var/lib/pgsql/slave_archive/%f %p
-------------------------------------------------------

create also a standby.signal file (we're using postgres version 12.x)
switch to root and chmod 700 on slave1 directory
switch back to postgres: su - postgres
start the cluster on -D /var/lib/pgsql/slave1


psql -p 5435
create table table1 as SELECT * FROM generate_series(1, 10000);
select pg_switch_wal();
---> on psql -p 5466 we will also see this insert/table


let's configure the pg_pool:
------------------------------------------------------------
cd /etc/pgpool-II
cp pgpool.conf.sample pgpool.conf
vi pgpool.conf:
----------------------------------------
listen_address=*
backend_hostname0=127.0.0.1
backend_port0=5435
backend_directory0=/var/lib/pgsql/production_server 


backend_hostname0=127.0.0.1
backend_port0=5466
backend_directory0=/var/lib/pgsql/slave1 
health_check_user=postgres

----------------------------------------

./pgpool &
psql -p 9999 
in order to see the active nodes in the pool run:
show pool_nodes;
---> we need to recieve 2 nodes: 5435 / 5466

这是我用来配置pgpool + master & slave的脚本。如何解决等待状态?

EN

回答 1

Stack Overflow用户

发布于 2021-03-25 22:37:22

当我安装pgpool-II-12*包(4.1版)时,我遇到了同样的问题。找不到任何解决方案,所以我删除了它,并从here安装了pgpool-II-pg12*包(4.2版)并对其进行了配置。它在这个版本中工作得很好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65378590

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档