PostgreSQL复制槽:如何在主节点查看备节点信息
在PostgreSQL 11.2主节点查看所有备节点的方法
在PostgreSQL 11.2中,你可以通过以下两个核心系统视图来查看备节点相关信息:
1. 使用pg_stat_replication查看当前在线的备节点
这个视图会展示当前正在与主节点建立复制连接的备节点,包含实时同步状态。执行查询:
SELECT application_name, client_addr, state, sync_state, slot_name FROM pg_stat_replication;
关键字段说明:
application_name:备节点的自定义标识(由备节点postgresql.conf中的application_name参数设置)client_addr:备节点的IP地址state:备节点连接状态(如streaming表示正在流式复制)sync_state:同步模式(sync为同步备节点,async为异步备节点)slot_name:备节点关联的复制槽名称
2. 使用pg_replication_slots查看所有配置的复制槽(含关联备节点状态)
针对你配置的复制槽,这个视图可以展示所有已创建的复制槽,以及对应的备节点活跃情况:
SELECT slot_name, slot_type, active, active_pid, restart_lsn FROM pg_replication_slots;
关键字段说明:
slot_name:复制槽名称slot_type:复制槽类型(物理复制通常为physical)active:是否有备节点正在使用该复制槽(t表示活跃,f表示未活跃)active_pid:使用该复制槽的备节点连接进程IDrestart_lsn:复制槽记录的最小WAL位置,防止主节点清理未同步日志
注意:pg_stat_replication仅显示当前在线的备节点,pg_replication_slots会包含所有已配置的复制槽(即使对应备节点暂时离线)。
内容的提问来源于stack exchange,提问作者NinjaGaiden
相关产品推荐
相关产品推荐

