Mysql DBA 高级运维学习之路-MySQL主从复制故障解决
1.MySQL从库数据冲突导致同步停止Show slave status报错
且show slave status\G
Slave_IO_Running: Yes
Slave_SQL_Running: NO
Seconds_Behind_Master: NULL
Last_Error:Error ‘Can’t create database ‘linzhongniao’;database exists’on query.
Default database:’linzhongniao’.Query:‘create database linzhongniao’
解决方法:
方法一:
Stop slave
Set global sql_slave_skip_counter=1
Start slave
(1)对于普通的互联网业务,忽略问题不是很大,当然要确认不影响公司业务的前提下。
(2)企业场景解决主从同步,比主从不一致对当前业务更重要。如果主从数据一致很重要找个时间恢复一下这个从库。
方法二:根据错误号跳过指定的错误
# grep skip /data/3306/my.cnf
skip-name-resolve 忽略名称解析解决mysql连接慢的问题。
slave-skip-errors = 1032,1062 一般由于入库重复导致的失败就可以忽略。
当然也可以将slave-skip-errors的值设置为all,这样就会导致主从库数据同步数据缺失。我们可以参考mysql常见错误代码来设置我们想要忽略的错误号,还可以通过错误号解决mysql出现故障。
2.mysql常见错误代码
1005:创建表失败
1006:创建数据库失败
1007:数据库已存在,创建数据库失败
页:
[1]