GaussDB主备版为源强制结束任务
本小节介绍GaussDB主备版为源的同步链路在强制结束任务后如何清理源库流复制槽。
复制槽命名规则取决于数据库内核版本(可通过select working_version_num();命令查看),版本号低于92556默认使用串行解码,复制槽名命名规则为“replication_slot_唯一性标识”;版本号大于等于92556默认使用并行解码,复制槽名命名规则为“drs_唯一性标识”。其中唯一性标识需要将任务node id中的“-”替换为“_”获取,node id可在DRS任务同步日志页面查看“task node id is ***”日志找到。
前提条件
由于普通用户没有执行execute direct操作的权限,删除流复制槽需要联系GaussDB运维人员执行以下操作。
操作步骤
- 使用DRS同步任务测试连接时的用户登录GaussDB主备版实例。
- 执行如下语句,查询同步任务选择的database对象所对应的流复制槽名称。
select slot_name from pg_replication_slots where database = 'database';
其中database为DRS同步任务中选择同步的database。
- 执行如下语句,删除对应的流复制槽
select * from pg_drop_replication_slot('slot_name');
其中slot_name为2中查询的流复制槽名称。
- 执行如下语句,查询流复制槽是否成功删除
select slot_name from pg_replication_slots where database = 'database';
查询结果为空表示DRS同步任务对应的流复制槽已成功删除。