系统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