CentOS上的PostgreSQL复制功能主要有流复制和逻辑复制两种,基于WAL(预写日志)机制实现数据同步,以下是具体介绍:
postgresql.conf设置wal_level=replica、max_wal_senders=10等参数,创建复制用户并授权,在pg_hba.conf中允许从节点连接。pg_basebackup从主节点备份数据,配置recovery.conf(或postgresql.auto.conf)指定主节点连接信息和恢复参数,启用hot_standby模式。pg_stat_replication查看复制状态,从节点检查数据是否同步。wal_level=logical、max_replication_slots≥1,创建发布(CREATE PUBLICATION)并指定需同步的表。CREATE SUBSCRIPTION),指定主节点连接信息和发布名称,订阅节点需提前创建对应表结构。wal_level:决定日志详细程度,流复制需设为replica或logical,逻辑复制必须为logical。max_wal_senders:主节点允许的最大WAL发送进程数,需大于复制节点数量。archive_mode:启用归档模式(流复制需开启)。pg_stat_replication),处理延迟或错误。参考资料: