参考文档
http://www.111cn.net/database/mysql/58979.htm
mysql 版本
mysql -V
mysql Ver 14.14 Distrib 5.6.25, for Linux (x86_64) using EditLine wrapper
公司mysql主从服务器断了
故障发生时间:2015-12-08 19:51:35
故障恢复时间:2015-12-09 12:22:38
1.收到同事反馈 mysql 主从断开了
2.登录slave 查看结果 如下 的确挂了
3.得到的相关信息有
Master_Host:192.168.66.6
Master_User:repl
Master_Port:10010
Master_Log_File: master-bin.000015
Slave_IO_Running: Yes
Slave_SQL_Running: NO
Last_Error:2015-12-08 19:51:35 30836 [ERROR] Slave SQL: Worker 3 failed executing transaction '' at master log master_bin.000015, end_log_pos 686772256; Error 'Operation CREATE
USER failed for 'zabbix'@'localhost'' on query. Default database: ''. Query: 'CREATE USER 'zabbix'@'localhost'', Error_code: 1396
Executed_Gtid_Set:30f53a54************************:1-23
Master_Auto_Position:1
4.恢复操作
登录slave
stop slave;
reset slave all;
set global gtid_purged=30f53a54************************:1-23;
change master to master_host='192.168.66.6', master_user='repl', master_password='mysql', master_port='10010',master_log_file='master_bin.000015', master_auto_position=1;
start slave;
show slave status\G;
主从状态恢复
5.故障原因
http://blog.sina.com.cn/s/blog_439f80c40100yoln.html
建用户的时候报告这个错误,原因是mysql中已经有了这个用户,可以从mysql.user中直接删除,然后刷新权限,再建用户就不会有这个问题了。如果是drop user先,那么mysql内部应该会自动刷新一下,那么再建也不会有这问题了。
一个老外遇到了这个问题,给了个例子。他就是没有刷新权限,才导致了这问题。
2015-12-08 19:51:35 我们之前已经创建了一个查询mysql 主从状态的 查询帐号zabbix 无密码 这个点对这个帐号赋予了其他的权限 查询mysql 的状态 但没有刷新权限 导致问题出现
6.后期避免
对于 mysql 无论 master slave 的操作 都需慎重
如果对从进行修改数据,那么很可能从在执行主的bin-log时出现错误而停止同步,这个是很危险的操作。所以一般情况下,非常小心的修改从上的数据。