mysql主从同步常见异常及恢复方法mysql
1. 通常的异常只须要跳过一步便可恢复sql
>slave stop;vim
>SET GLOBAL sql_slave_skip_counter = 1;服务器
>slave start;post
2.断电致使主从不能同步时,通主库的最后一个bin-log日志进行恢复日志
在主库服务器上,mysqlbinlog mysql-bin.xxxx > binxxxx.txtip
tail -n 100000 binxxxx.txt > tail-binxxxx.txt同步
vim tail-binxxxx.txt 打开tail-binxxxx.txt文件找到最后一个postion值io
而后在从库上,change host to 相应正确的值ast
>slave stop;
>change master to master_host='ip', master_user='username', master_password='password', master_log_file='mysql-bin.xxxx', master_log_pos=xxxx;
>slave start;
>show slave status\G;
3.主键冲突、表已存在等错误代码如1062,1032,1060等,能够在mysql主配置文件指定
略过此类异常并继续下条sql同步,这样也能够避免不少主从同步的异常中断
[mysqld]
slave-skip-errors = 1062,1032,1060