管理 forRDS Postgre 的SQL邏輯複寫槽 - Amazon Relational Database Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

管理 forRDS Postgre 的SQL邏輯複寫槽

在邏輯複寫案例中擔任發佈者節點的 執行個體上執行主要版本升級之前,您必須捨棄執行個體上的複寫插槽。 RDS SQL 主要版本升級預先檢查程序會通知您,除非捨棄複寫槽,否則升級無法繼續進行。

若要從 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)