逻辑复制环境删除订阅报错 replication slot does not exist

在瀚高数据库4.5.7版本中,删除订阅时遇到错误,提示复制槽test2_sub不存在。这是因为DROPSUBSCRIPTION操作未能找到相关复制槽。解决方案是首先通过ALTERSUBSCRIPTION命令解除订阅与复制槽的绑定,如果订阅处于启用状态,需先禁用再进行解除操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

瀚高数据库
目录
环境
症状
问题原因
解决方案

环境
系统平台:N/A
版本:4.5.7
症状
删除订阅时报错:

highgo=# drop subscription test2_sub ;       

ERROR:  could not drop replication slot "test2_sub" on publisher: ERROR:  replication slot "test2_sub" does not exist

问题原因
当删除订阅时,DROP SUBSCRIPTION操作将连接到逻辑复制的主库上清理绑定的复制槽,如果相关复制槽未被发现,则执行DROP SUBSCRIPTION命令时将会报错。

这种情况说明该订阅使用到的复制槽已被各种原因删除。

解决方案
需要解除复制槽与订阅的绑定关系。

highgo=# alter subscription test2_sub set (slot_name =none);

ALTER SUBSCRIPTION

如果订阅状态为enable,需要先disable,然后再解除绑定:

highgo=#  alter subscription test2_sub disable;

ALTER SUBSCRIPTION

highgo=# alter subscription test2_sub set (slot_name =none);

ALTER SUBSCRIPTION

否则会报错:

highgo=# alter subscription test2_sub set (slot_name =none);

ERROR:  cannot set slot_name = NONE for enabled subscription
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值