PostgreSQL 正體中文使用手冊
PostgreSQL.TW
官方使用手冊
小島故事
加入社團
Search…
14
簡介
前言
I. 新手教學
II. SQL 查詢語言
III. 系統管理
16. Installation from Binaries
17. 用原始碼安裝
18. 用原始碼在 Windows 上安裝
19. 服務配置與維運
20. 服務組態設定
21. 使用者認證
22. 資料庫角色
23. Managing Databases
24. 語系
25. 例行性資料庫維護工作
26. 備份及還原
27. High Availability, Load Balancing, and Replication
28. 監控資料庫活動
29. 監控磁碟使用情況
30. 高可靠度及預寫日誌
31. 邏輯複寫(Logical Replication)
30.1. 發佈(Publication)
30.2. 訂閱(Subscription)
30.3. 衝突處理
30.4. 限制
30.5. 架構
30.6. 監控
30.7. 安全性
30.8. 系統設定
30.9. 快速設定
32. Just-in-Time Compilation(JIT)
33. 迴歸測試
IV. 用戶端介面
V. 資料庫程式設計
VI. 參考資訊
VII. 資料庫進階
VIII. 附錄
參考書目
Powered By
GitBook
31. 邏輯複寫(Logical Replication)
邏輯複寫(Logical Replication)是一種依據複寫指標(通常是主鍵)複製資料物件及其更新的方法。我們使用術語邏輯與物理複寫相對比,物理複寫使用確切的區塊位址進行每一個字元組的複寫。PostgreSQL 同時支持這兩種機制,請參閱
第 26 章
。邏輯複寫允許對資料複寫和安全性進行更精細的控制。
邏輯複寫使用 publish(發佈)和 subscribe(訂閱)模式,其中一個或多個訂閱者 subscribe 發布者節點上的一個或多個 publish。 訂閱戶從他們訂閱的 publish 中提取資料,並可能隨後重新發布資料以允許串聯複寫或更複雜的複寫架構。
資料表的邏輯複寫通常始於對發佈者資料庫上的資料進行快照並將其複寫到訂閱伺服器。一旦完成,發佈者的變化就會即時發送給訂閱者。訂閱者按照與發佈者相同的順序變動資料,以確保單個訂閱內的發佈的交易事務一致性。這種資料複寫方法有時被稱為交易事務複寫。
典型的邏輯複寫情況有:
在訂閱者時常向單個資料庫或資料庫的子集發送增量變更時。
當訂閱者收到個別的變更時能觸發事件。
將多個資料庫合併成一個資料庫(例如為了分析的需求)。
在不同的 PostgreSQL 版本之間複寫。
在不同平台(例如 Linux 到 Windows)上的 PostgreSQL 伺服器之間的複寫
將複寫的資料給予不同的使用者群組存取權限。
在多個資料庫之間共享資料庫的一部份。
訂閱戶資料庫的行為與任何其他 PostgreSQL 的行為相同,並且可以透過定義其自己的發佈來用作其他資料庫的發佈者。當訂閱者被應用程序視為唯讀時,單個訂閱就不會發生衝突。另一方面,如果應用程序或其他使用者對同一組資料表執行了其他的寫入操作,則可能會出現衝突。
Previous
29.5. WAL Internals
Next
30.1. 發佈(Publication)
Last modified
7mo ago
Export as PDF
Copy link
Edit on GitHub