mysql之主從同步部分庫或表

同步部分數據有兩個思路,1.master只發送需要的;2.slave只接收想要的。

master端:

binlog-do-db      二進制日誌記錄的數據庫(多數據庫用逗號,隔開)
binlog-ignore-db 二進制日誌中忽略數據庫 (多數據庫用逗號,隔開)

舉例說明:

1)binlog-do-db=YYY 需要同步的數據庫,不在內的不同步。(不添加這行表示同步所有)

這裏主庫只同步test1,test2庫。


2)binlog-ignore-db = mysql  這是不記錄binlog,來達到從庫不同步mysql庫,以確保各自權限
     binlog-ignore-db = performance_schema
     binlog-ignore-db = information_schema

這裏向從庫同步時忽略test1,test2庫




slave端
replicate-do-db    設定需要複製的數據庫(多數據庫使用逗號,隔開)
replicate-ignore-db 設定需要忽略的複製數據庫 (多數據庫使用逗號,隔開)
replicate-do-table  設定需要複製的表
replicate-ignore-table 設定需要忽略的複製表 
replicate-wild-do-table 同replication-do-table功能一樣,但是可以通配符
replicate-wild-ignore-table 同replication-ignore-table功能一樣,但是可以加通配符


與上述對比,這裏的replicate就很好理解了,下面簡單說幾點。

例如:

從庫忽略複製數據庫test3,但是需要說明的是,其實從庫的relaylog中是從在關於test3的相關日誌,只是從庫沒有使用罷了。




增加通配符的兩個配置

replicate-wild-do-table=db_name.%   只複製哪個庫的哪個表
replicate-wild-ignore-table=mysql.%   忽略哪個庫的哪個表


【完】

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章