更新时间:2024-12-18 GMT+08:00

PostgreSQL数据源如何手动删除复制槽?

问题描述

PostgreSQL数据源不会自动删除复制槽,当复制槽数达到上限时,无法执行新的作业,需要手动删除复制槽。

原因分析

PostgreSQL数据源不会自动删除复制槽。

解决方案

  1. 登录作业使用的源数据库。
  2. 查询同步任务选择的database对象所对应的流复制槽名称。
    select slot_name from pg_replication_slots where database = 'database';
  3. 执行如下语句,删除对应的流复制槽。
    select * from pg_drop_replication_slot('slot_name');
  4. 执行如下语句,查询流复制槽是否成功删除。
    select slot_name from pg_replication_slots where slot_name = 'slot_name';