本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
管理 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)