云数据库 RDS-逻辑订阅故障转移(Failover Slot):使用方法

时间:2023-11-01 16:21:57

使用方法

在发布端执行如下SQL,创建一个Failover Slot:

表1 命令及参数说明

版本

命令

参数说明

PostgreSQL12和PostgreSQL13版本

SELECT * FROM pg_create_logical_replication_slot('slotname', 'pgoutput', false, true);

  • slotname表示logical slot的名称。
  • pgoutput表示plugin的名称,也可以更改为其他支持的插件。
  • 第三个参数(例如false),表示该slot是否为临时slot。
  • 第四个参数(例如true),表示该slot是否为Failover Slot。

PostgreSQL14及以上版本

SELECT * FROM pg_create_logical_replication_slot('slotname', 'pgoutput', false, false, true);

  • slotname表示logical slot的名称。
  • pgoutput表示plugin的名称,也可以更改为其他支持的插件。
  • 第三个参数(例如false),表示该slot是否为临时slot。
  • 第四个参数(例如true),表示是否启动两阶段提交选项。
  • 第五个参数(例如true),表示该复制槽是否为Failover slot。

因此,如果要创建一个Failover Slot,在第三个参数临时slot字段必须为false,最后一个参数必须为true。如果最后一个参数省略不写,则创建的是非Failover Slot。

support.huaweicloud.com/usermanual-rds/rds_pg_kernel_0001.html