邏輯復制(pglogical)
更新時間 2024-05-31 18:52:35
最近更新時間: 2024-05-31 18:52:35
分享文章
本小節主要介紹RDS-PostgreSQL的pglogical插件使用方法。
操作場景
RDS-PostgreSQL支持 pglogical插件,為PostgreSQL數據庫提供了邏輯流復制發布和訂閱的功能。
前提條件
- 請確保您的實例內核大版本滿足,本插件所支持的內核版本,請參考支持的版本插件列表。
插件使用
- 安裝插件
CREATE EXTENSION IF NOT EXISTS pglogical;
- 卸載插件
DROP EXTENSION IF EXISTS pglogical;
使用示例
1.在發布端創建發布節點(實例A)
SELECT pglogical.create_node(
node_name := 'provider',
dsn := 'host=127.0.0.1 port=<端口號> dbname=test user=root password=密碼'
);
2.配置復制集。將public中的所有表添加到default復制集(實例A)
SELECT pglogical.replication_set_add_all_tables('default', ARRAY['public']);
3.在訂閱端創建訂閱節點。 一旦設置了發布端節點,訂閱者就可以訂閱它。首先必須創建訂閱者節點(實例B):
SELECT pglogical.create_node(
node_name := 'subscriber',
dsn := 'host=127.0.0.1 port=<端口號> dbname=test user=root password=密碼'
);
4.在訂閱端創建訂閱(實例B)。
SELECT pglogical.create_subscription(
subscription_name := 'subscription',
provider_dsn := 'host=<provider內網地址> port=<provider內網端口> dbname=test user=root password=密碼'
);
創建訂閱后,將在后臺啟動同步和復制流程。
常見問題
此插件使用方法與開源方法一致,請詳見pglogical開源社區。