逻辑订阅故障转移(Failover Slot) 查看方法 在发布端执行如下SQL,查询当前数据库的复制槽信息。 select from pggetreplicationslots(); 查看“failover”字段,如果值为“true”,表示该复制槽为Failover Slot。 如果没有“failover”字段或该字段值为“false”,说明该复制槽不是Failover Slot。 逻辑订阅完整使用示例 发布端创建表 create table tableName(id int primary key, num int); 发布端创建发布 create publication pubName for table tableName; 发布端创建一个Failover Slot(若为PostgreSQL12或13版本,则去掉第四个参数false) SELECT FROM pgcreatelogicalreplicationslot( 'slotname' , 'pgoutput' , false, false, true); 发布端插入数据 insert into tableName values(1,1); insert into tableName values(2,2); 订阅端创建表 create table tableName (id int primary key, num int); 订阅端创建订阅,指定创建的Failover Slot名称 create subscription subName connection 'host192.168.0.10 dbnamepostgres userroot port5432 password ‘xxxxxxx ' publication pubName with(copydatatrue,createslotfalse,slotname slotname); 订阅端查询数据,验证数据是否订阅到 select from tableName; 主备切换 发布端继续插入数据,在订阅端查看,逻辑订阅不会断开。