管理 RDS for PostgreSQL 的逻辑复制查槽 - Amazon Relational Database Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

管理 RDS for PostgreSQL 的逻辑复制查槽

对于在逻辑复制场景中充当发布者节点的 RDS for PostgreSQL 数据库实例,在对其执行主要版本升级之前,必须删除该实例上的复制插槽。主要版本升级预检查过程会通知您,在插槽被删除之前,升级无法继续。

要从 RDS for PostgreSQL 数据库实例中删除插槽,请先删除订阅,然后删除插槽。

要识别使用 pglogical 扩展创建的复制插槽,请登录到每个数据库并获取节点的名称。当您查询订阅者节点时,您会在输出中得到发布者节点和订阅者节点,如本示例所示。

SELECT * FROM pglogical.node; node_id | node_name ------------+------------------- 2182738256 | docs_lab_target 3410995529 | docs_lab_provider (2 rows)

您可以通过以下查询获取有关订阅的详细信息。

SELECT sub_name,sub_slot_name,sub_target FROM pglogical.subscription; sub_name | sub_slot_name | sub_target ----------+--------------------------------+------------ docs_lab_subscription | pgl_labdb_docs_labcb4fa94_docs_lab3de412c | 2182738256 (1 row)

现在您可以删除订阅,如下所示。

SELECT pglogical.drop_subscription(subscription_name := 'docs_lab_subscription'); drop_subscription ------------------- 1 (1 row)

删除订阅后,您可以删除该节点。

SELECT pglogical.drop_node(node_name := 'docs-lab-subscriber'); drop_node ----------- t (1 row)

您可以验证该节点是否不再存在,如下所示。

SELECT * FROM pglogical.node; node_id | node_name ---------+----------- (0 rows)