MySQL主從復制中replicate-ignore-db replicate-wild-ignore-table的應用
replicate-ignore-db
replicate-wild-ignore-table
官方的解釋是:在主從同步的環境中,replicate-ignore-db用來設置不需要同步的庫。生產庫上不建議設置過濾規則。如果非要設置,那就用Replicate_Wild_Ignore_Table:
在實際生產主從復制環境中,配置Replicate_Wild_Ignore_Table:mysql.% 主庫賬戶寫,從庫賬戶讀
測試案例:
配置參數一:replicate-ignore-db = mysql
第一種情況
主庫:
use mysql
CREATE TABLE test.employees(
id int(5))ENGINE=INNODB DEFAULT CHARSET=UTF8;
從庫不會同步。
第二種情況
從庫:
replicate-ignore-db = mysql
主庫:
use test
CREATE TABLE mysql.employees(
id int(5))ENGINE=INNODB DEFAULT CHARSET=UTF8;
從庫不會同步。
第三種情況
use test
update mysql.user set user = 'scott' where user = 'scott1';
從庫會同步
第四種情況
grant all on *.* to scott@'%' identified by 'tiger';
從庫會同步
配置參數二:replicate-wild-ignore-table = mysql.%
第一種情況
主庫:
use test
update mysql.user set user = 'scott' where user = 'scott1';
從庫沒有同步。
第二種情況
主庫:
grant all on *.* to scott@'%' identified by 'tiger';
從庫沒有同步。