云数据库 RDS-逻辑订阅故障转移(Failover Slot):逻辑订阅完整使用示例

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

逻辑订阅完整使用示例

  • 发布端创建表

    create table tableName(id int primary key, num int);

  • 发布端创建发布

    create publication pubName for table tableName;

  • 发布端创建一个Failover Slot(若为PostgreSQL12或13版本,则去掉第四个参数false)

    SELECT * FROM pg_create_logical_replication_slot('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 'host=192.168.0.10 dbname=postgres user=root port=5432 password=xxxxxxx' publication pubName with(copy_data=true,create_slot=false,slot_name= slotname);

  • 订阅端查询数据,验证数据是否订阅到

    select * from tableName;

  • 主备切换

    发布端继续插入数据,在订阅端查看,逻辑订阅不会断开。

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