【mysql】主从同步时出错,如何恢复同步

mysql主从同步出错,这个时候从服务器会停止同步服务,等待人工恢复,此时有多种方法来解决。

一、查看状态

从服务器,登陆mysql,查询从服务器的状态:

sql 复制代码
从服务器mysql> show slave status\G

图1

可以看出从服务器出现1049错误。

二、解决方案1:解决异常

比如图1,提示数据库不存在(可能在从服务器被删掉了),那么可以在从服务器创建一个空的数据库,然后重启:

sql 复制代码
-- 停止同步
从服务器mysql> stop slave;
-- 启动同步
从服务器mysql> slave start;
-- 查看状态
从服务器mysql> show slave status;

图2

三、解决方案2:跳过异常

这里也有三种解决方法。

3.1 跳过N个事务

sql 复制代码
-- 停止同步
从服务器mysql> stop slave;
-- 跳过操作
从服务器mysql> set global sql_slave_skip_counter=1;
-- 启动同步
从服务器mysql> start slave;
-- 查看状态
从服务器mysql> show slave status;

3.2 跳过某种类型错误

从服务器,编辑 /etc/my.cnf:

mysqld

slave-skip-errors=1049,1007,1008

错误号可以参考图1查询,比如图1的错误号是 1049。

修改后重启mysql服务。

bash 复制代码
从服务器$ service mysqld restart

3.3 跳过所有错误

从服务器,编辑 /etc/my.cnf:

mysqld

slave-skip-errors=all

修改后重启mysql服务。

bash 复制代码
从服务器$ service mysqld restart
相关推荐
浩浩测试一下11 分钟前
SQL注入高级绕过手法汇总 重点
数据库·sql·安全·web安全·网络安全·oracle·安全架构
苹果酱056718 分钟前
2020-06-23 暑期学习日更计划(机器学习入门之路(资源汇总)+概率论)
java·vue.js·spring boot·mysql·课程设计
Pasregret35 分钟前
缓存与数据库一致性深度解析与解决方案
数据库·缓存·wpf
skywalk816338 分钟前
Graph Database Self-Managed Neo4j 知识图谱存储实践2:通过官方新手例子入门(未完成)
数据库·知识图谱·neo4j
Lucky GGBond41 分钟前
MySQL 报错解析:SQLSyntaxErrorException caused by extra comma before FROM
数据库·mysql
Java水解1 小时前
Mysql之存储过程
后端·mysql
漫步向前1 小时前
mysql主备延迟
mysql
Claudio1 小时前
【MySQL】联合索引和覆盖索引(索引失效的误区讲解+案例分析)
数据库
纪元A梦1 小时前
Redis最佳实践——性能优化技巧之监控与告警详解
数据库·redis·性能优化
GarfieldFine2 小时前
MySQL索引使用一定有效吗?如何排查索引效果?
数据库·mysql