一、概述
1、簡介
Tungsten-Replicator 是第三方的MySQL數據複製引擎,是個商業產品,同時提供開源版本。類似於MySQL 自身的replication,基於日誌複製模式,不同的是 Tungsten 通過Extractor控件讀取mysql主庫的binlog 解析成自己的日誌格式--THL(Transaction History Log), 在從庫上通過Applier控件寫入數據庫。
Tungsten-Replicator 具有以下特性:
A. 支持高版本MySQL向低版本複製,如:MySQL5.1 --> MySQL5.0;
B. 支持跨數據庫系統的複製,如:MySQL --> PostgreSQL
C. 支持多主庫向單臺Slave 的複製,Multi-Master --> Slave
D. Ganji-Replicator提取數據的更新記錄,寫到MySQL 隊列表 Queue;基於這個隊列,可以爲其他應用服務提供便利,如檢索系統數據更新,跨機房半同步。 MySQL --> Queue
2、MySQL Replicator 拓撲圖
Master Replicator:
兩個步驟 --- 提取binlog放入隊列,隊列寫入THL 。
replicator.pipeline.master=binlog-to-q,q-to-thl
replicator.pipeline.master.stores=thl,queue
Slave Replicator:
三個步驟 --- 提取遠程THL寫入本地THL,從本地THL寫queue,接受queue事務寫入Slave DBMS。
replicator.pipeline.slave=remote-to-thl,thl-to-q,q-to-dbms
replicator.pipeline.slave.stores=thl,parallel-queue