系統mysql數據庫當前處於主從複製狀態,且複製使用的是root用戶,密碼過於簡單,須要修改。停了slave後修改master密碼,而後,而後想固然地change master就出錯了...mysql
一條完整的change:sql
change master to master_host='xxx.xxx.xxx.xxx', master_user='replication user', master_password='passwd', master_port=3306, master_log_file='mysql-binlog.000xxx', master_log_pos=xxx;
修改密碼後,從新執行change:數據庫
change master to master_host='xxx.xxx.xxx.xxx', master_user='replication user', master_password='new passwd';
哇哈~,悲劇了!.net
若是指定MASTER_HOST與MASTER_PORT參數,slave會認爲master與以前的不是同一個(即使MASTER_HOST 與 MASTER_PORT所帶的參數與以前相同),以前指定的master的binlog文件名及位置將再也不適用。code
因此,更新密碼後,只須要:blog
change master to master_user='replication user', master_password='new passwd';
也許能夠更簡單的只指定密碼?(未驗證)get
change master to master_password='new passwd';
更多參考io