国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

PostgreSQL實現DDL邏輯復制

IT那活兒 / 2927人閱讀
PostgreSQL實現DDL邏輯復制

PostgreSQL 社區官方版本不支持DDL的邏輯復制,僅支持DML【INSERT、UPDATE、DELETE、TRUNCATE】,且要求表有主鍵,否則UPDATE和DELETE無法復制(注意:邏輯復制要求wal_level為logical)

目前有第三方的插件可以做到DDL復制:
  • BDR【收費】

  • pglogical【開源,比較復雜】

  • pgl_ddl_deploy

本文主要介紹pgl_ddl_deploy插件。

pgl_ddl_deploy該插件可以實現PG邏輯復制中的DDL復制。該插件具有以下特點:

  • 任何DDL SQL語句都可以直接傳播給訂閱者
  • 表可以在創建時自動添加到復制中
  • 支持過濾。可以選擇性僅復制某些schema
  • 可以選擇以鎖定安全的方式在訂閱服務器上進行部署
  • ALTER TABLE語句可以由子命令標簽過濾

當前最新版本是2.10版,從2.0版本開始,它支持使用本機邏輯復制進行DDL復制(以前依賴于pglogical插件)。

詳細信息請查閱:https://github.com/enova/pgl_ddl_deploy


pgl_ddl_deploy安裝


需要在源端和目標端都需要進行安裝:
tar -xzvf pgl_ddl_deploy.tar.gz
cd pgl_ddl_deploy
make
make install


部署流程


1. 在發布端進行配置

1.1 創建發布

CREATE PUBLICATION testpub FOR ALL TABLES IN SCHEAM public;
CREATE EXTENSION pgl_ddl_deploy;

1.2 在發布端進行配置

INSERT INTO pgl_ddl_deploy.set_configs (set_name,include_schema_regex,driver) VALUES(testpub,.*,native::pgl_ddl_deploy.driver);

set_name:發布端的名字,一定要和創建的發布的名稱一致

include_schema_regex:提供正則表達式,用來匹配需要同步的schema,它可以將新表自動添加到復制中

driver:選擇原生(native)或者pglogical插件

1.3 開啟DDL復制

SELECT pgl_ddl_deploy.deploy(testpub) from pgl_ddl_deploy.set_configs;

返回結果為t,代表啟動成功

1.4 相關權限配置

SELECT pgl_ddl_deploy.add_role(testpub) from pg_roles where rolname=replic;

2. 目標端配置:

CREATE EXTENSION pgl_ddl_deploy;
CREATE SUBSCRIPTION testsub connection host=PG-1 port=5432 user=replic password=replic dbname=test PUBLICATION testpub;


實戰操作


源端配置:

目標端配置:

源端執行ALTER:

目標查看ALTER直接結果:

源端添加和刪除表:

目標端查看結果:

源端插入數據:

目標端查看:【新添加的表的數據不會自動同步到目標端,需要在目標端進行手工刷新】


END


更多精彩干貨分享

點擊下方名片關注

IT那活兒

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/129911.html

相關文章

  • 數據倉庫架構的變遷

    摘要:前面我們簡單闡述了分布式數據庫的架構,并通過一條簡單的查詢語句解釋了分布式的執行計劃。 引言 第八屆中國架構師大會(SACC2016)10月27號到29號在北京萬達索菲特大飯店成功舉辦。大會以架構創新之路為主題,云集了國內外頂尖專家,共同探討云計算和大數據等技術背景下,如何通過架構創新及各種IT新技術來帶動企業轉型增效。作為一家專注于云端數據倉庫的初創公司,酷克數據受邀在SACC201...

    Raaabbit 評論0 收藏0
  • PostgreSQL 5.7. Schemas 筆記

    摘要:筆記一個數據庫包含多個里包含的下一層邏輯結構就是也包括各種不同里的名可以相同在創建一個新的時,會自動為其創建一個名為的。如果未設置變量,那么會將你創建的所有對象默認放入中。執行就能看到其名稱。 PostgreSQL 5.7. Schemas 筆記 https://www.postgresql.org/docs/9.4/ddl-schemas.html A database conta...

    617035918 評論0 收藏0
  • 新書推薦 |《PostgreSQL實戰》出版(提供樣章下載)

    摘要:作者譚峰張文升出版日期年月頁數頁定價元本書特色中國開源軟件推進聯盟分會特聘專家撰寫,國內多位開源數據庫專家鼎力推薦。張文升中國開源軟件推進聯盟分會核心成員之一。 很高興《PostgreSQL實戰》一書終于出版,本書大體上系統總結了筆者 PostgreSQL DBA 職業生涯的經驗總結,本書的另一位作者張文升擁有豐富的PostgreSQL運維經驗,目前就職于探探科技任首席PostgreS...

    Martin91 評論0 收藏0

發表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<