【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
相关推荐
disanleya14 小时前
MySQL默认密码不安全?如何首次登录并强化?
数据库·mysql·安全
花开富贵贼富贵14 小时前
MySQL 核心高级特性
运维·数据库·mysql
hello 早上好14 小时前
深入 Spring 依赖注入底层原理
数据库·sql·spring
API快乐传递者14 小时前
抓取淘宝商品详情商品数据API接口调用说明文档|获取淘宝商品价格主图数据等
数据库
济南java开发,求内推14 小时前
Redis一个服务器部署多个节点
服务器·数据库·redis
花菜会噎住14 小时前
Django视图与路由全解析:从URL到页面,一篇讲透
数据库·django·sqlite·函数
-雷阵雨-15 小时前
MySQL——数据库约束
数据库·mysql
大筒木老辈子15 小时前
MySQL笔记---C/C++访问MySQL数据库
数据库·笔记·mysql
友友马15 小时前
『 数据库 』MySQL复习(表的约束)
数据库·mysql
奥尔特星云大使15 小时前
MySQL分布式架构:MyCat详解
数据库·分布式·mysql·mycat·高可用