MySQL的reset slave与reset slave all


reset slave是各版本Mysql都有的功能,可以让slave忘记自己在master binary log中的复制位置。

 

reset slave命令主要完成以下工作内容:
  -删除master.info和relay-log.info文件
  -删除所有的relay log(包括还没有应用完的日志)
  -创建一个新的relay log文件
  -将复制延迟选项 master_delay设置为0

reset slave不会修改gtid_executed、gtid_purged的值。

在执行reset slave之前,必须执行stop slave。

在mysql 5.6之后,reset slave不会修改任何复制配置参数,所有的连接信息仍然保留在内存中,包括主库地址、端口、用户、密码等。也就是说在执行reset slave之后还可以直接运行start slave命令而不必重新输入change master to命令,而运行show slave status也仍和没有运行reset slave一样,有正常的输出。

reset slave之后关闭mysqld就会清除连接参数。


在mysql 5.6.3之后,可以使用reset slave all来清除连接参数,运行show slave status就输出为空了。

mysql 5.6.7之后,reset slave会隐式提交事务。 

 

 

运行reset slave命令需要reload权限。MHA在做故障切换时,就会在新主上运行命令RESET SLAVE /*!50516 ALL */ ,清除掉它的所有从库信息。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM