Mysql5.7多源複製,過濾複製一段時間後增長複製一個庫的實現方法

多源複製若是是整個實例級別的複製,那不存在下面描述的狀況。
若是是對其中一個或多個主實例都是過濾複製,而且運行一段時間後,想在這個源上再增長一個庫怎麼實現?
 
主1:192.168.1.10 3306     db1      db2
主2:192.168.1.20 3306     db3  
從:  192.168.1.30 3306
 
假如以前實現的是過濾複製,複製的是主1的db1 和 主2的db3,已經運行一段時間了。如今想增長主1上的db2,該如何實現?
 
具體實現方法以下:
1. 使用mysqldump 導出 db2(記錄pos1),並導入多源從庫。
2. 中止多源從庫的sql線程( STOP SLAVE SQL_THREAD  ),並記錄此刻同步到主1的位置pos2。
3. 使用mysqlbinlog  將pos1 到 pos2 的變動應用到從庫。(mysqlbinlog --start-position=pos1 --stop-position=pos2 -d db2 xxx.log | mysql -u -p -h -P )
4. 在線修改多源從庫的過濾條件(CHANGE REPLICATION FILTER Replicate_Wild_Do_Table = ('db1.%','db2.%','db3.%');)
5. 將過濾條件同步到參數文件。
 
另外有一個想法,是否能夠針對新增庫db2單獨增長一個channel? 也就是同一個實例裏的2個庫使用不一樣的2個channel。
相關文章
相關標籤/搜索