PG高可用集群搭建—基于Pgpool-II-4.5.2(二)------配置篇
一 PostgreSQL配置 本例Postgresql安装在/usr/pgsql-16目录,Pgpool-II安装在 /usr/local /pgpool目录。 1 在PostgreSQL主节点(pg1)上设置流复制 # 根据规划,创建归档日志目录,使用postgres用户操作 su - postgres mkdir -p /pgdata/archive # 在主节点初始化数据库,以postgres用户身份执行 /usr/pgsql-16/bin/initdb -D /pgdata # 修改 /pgdata/postgresql.conf文件 listen_addresses = '*' archive_mode = on archive_command = 'test ! -f /pgdata/archive/%f && cp %p /pgdata/archive/%f' max_wal_senders = 10 max_replication_slots = 10 wal_level = replicahot_ standby = on wal_log_hints = on 在主节点启动后,我们将使用Pgpool-II在线恢复(Online Recovery)功能设置从节点。 2 创建相关用户(主节点创建即可) 基于安全考虑,创建repl用户用于流复制,pgpool用户用于流复制延迟检查及Pgpool健康检查。 [postgres@pg1]# psql -U postgres -p 5432 SET password_encryption = ' scram-sha-256 '; CREATE ROLE pgpool WITH LOGIN; CREATE ROLE repl WITH REPLICATION LOGIN; \password pgpool \password repl \password postgres 如果想在show pool_nodes的结果里显示"replication_state"和"replication_sync_state"列,pgpool用户需要有数据库的超级用户权限或者添加到 pg_monitor组...