mysql 主从数据不一致,提示: Slave_SQL_Running: No 的解决方法

本文实例讲述了mysql 主从数据不一致,提示: Slave_SQL_Running No 的解决方法。分享给大家供大家参考,具体如下:

在slave服务器上通过如下命令

mysql> show slave status\G;

显示如下情况:

Slave_IO_Running: Yes
Slave_SQL_Running: No

表示slave不同步

解决方法一(忽略错误,继续同步):

1、先停掉slave

mysql> stop slave;

2、跳过错误步数,后面步数可变

mysql> set global sql_slave_skip_counter=1;

3、再启动slave

mysql> start slave;

4、查看同步状态

mysql> show slave status\G;

解决方法二(重新做主从,完全同步):

1、先进入主库进行锁表,注意窗口不要关闭

mysql> flush table with read lock;

2、把数据进行备份

> mysqldump -uroot -p --opt -R 数据库 > /data/bak.sql

3、再新开个窗口,查看主数据库信息

mysql> show master status;

+------------------+----------+--------------+------------------+-------------------+
| File       | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000005 |   1158 |       |         |          |
+------------------+----------+--------------+------------------+-------------------+

4、在从库上停止slave

mysql> stop slave;

5、导入备份的数据文件

mysql> source /data/bak.sql

6、重置同步

mysql> reset slave;

7、重新设置同步节点

mysql> CHANGE MASTER TO
MASTER_HOST='192.168.137.233',
MASTER_PORT=3306,
MASTER_USER='sync',
MASTER_PASSWORD='123456',
MASTER_LOG_FILE='mysql-bin.000005',
MASTER_LOG_POS=1158;

host,port,user,password请根据你的主库设置相应修改,log_file和log_pos根据主库中master status相应修改。

8、开启slave

mysql> start slave;

9、查看slave状态

mysql> show slave status\G;

显示如下信息则表示正常

Slave_IO_Running: Yes
Slave_SQL_Running: Yes

10、对主数据库解锁

mysql> unlock tables;

11、再次在主库中添加或修改数据,看从库数据是否同步。

更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL查询技巧大全》、《MySQL常用函数大汇总》、《MySQL日志操作技巧大全》、《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》及《MySQL数据库锁相关技巧汇总》

希望本文所述对大家MySQL数据库计有所帮助。

(0)

相关推荐

  • 详解MySQL数据库设置主从同步的方法

    简介 MySQL主从同步是目前使用比较广泛的数据库架构,技术比较成熟,配置也不复杂,特别是对于负载比较大的网站,主从同步能够有效缓解数据库读写的压力. MySQL主从同步的机制: MySQL同步的流程大致如下: 1.主服务器(master)将变更事件(更新.删除.表结构改变等等)写入二进制日志(master log). 2.从服务器(slave)的IO线程从主服务器(binlog dump线程)获取二进制日志,并在本地保存一份自己的二进制日志(relay log) 3.从服务器的SQL线程读取本

  • 如何恢复MySQL主从数据一致性

    最近被告知,MySQL主从数据库的数据不一致,猜测备库在同步过程中出现了问题,于是,登上备库,使用 mysql> show slave status\G查看,果然,备库在insert语句中因违反主键约束,导致备库停止了同步.现在的问题很明确,就是如何恢复主从库数据的一致性. 可选方案如下: 一.查看Master最新的Position,将其作为Slave复制的起点. 这种思路体现的是过去的不一致既往不咎,现在保持同步即可.看起来,这个思路和恢复主从库数据的一致性的初衷有所违背,但这种方法,简单,高

  • Mysql 主从数据库同步(centos篇)

    环境: 主服务器:centos 5.2 mysql 5.1.35 源码 IP:192.168.1.22 从服务器:centos 5.2 mysql 5.1.35 源码  IP:192.168.1.33 配置: 一.主服务器 1.1.创建一个复制用户,具有replication slave 权限. mysql>grant replication slave on *.* to 'repl'@'192.168.1.22' identified by 'repl'; 1.2.编辑my.cnf文件 vi

  • MySQL数据库InnoDB引擎主从复制同步经验总结

    近期将公司的MySQL架构升级了,由原先的一主多从换成了DRBD+Heartbeat双主多从,正好手上有一个电子商务网站新项目也要上线了,用的是DRBD+Heartbeat双主一从,由于此过程还是有别于以前的MyISAM引擎的,所以这里也将其心得归纳总结了一下: 1)MySQL的replication过程是一个异步同步的过程,并非完全的主从同步,所以同步的过程中是有延迟的,如果做了读写分离的业务的话,建议也要监控此延迟时间: 2)MySQL的master与slave机器记得server-id要保

  • Windows服务器下MySql数据库单向主从备份详细实现步骤分享

    一.目的:将主服务器中的MySql数据库同步到从服务器中,使得对主服务器的操作可以即时更新到从服务器,避免主服务器因环境或者网络异常一时无法使用,达到备份效果. 二.环境: 主从服务器操作系统.数据库版本均相同,具体如下: 操作系统:Windows 2003 Server R2 MySql数据库版本:5.0.51b 主服务器(用A代替)IP地址:192.168.4.100 从服务器(用B代替)IP地址:192.168.4.101 三.配置过程: 1.在A创建远程访问备份账户. 在A的MySql数

  • mysql数据库备份设置延时备份方法(mysql主从配置)

    一 为什么需要延时备份percona-xtrabackup是一个优秀的用于增量备份的工具.今天我们讲到的延时备份也是使用他们的产品.以前在MySQL AB复制一文中提到了AB复制.我们首先回顾下MySQL复制的相关要点.AB复制又称主从复制,实现的是数据同步.经过以下步骤: 1)主服务器把数据更改记录到二进制日志中,这个操作叫做二进制日志事件: 2)从服务器把主服务器的二进制日志事件拷贝到自己的中继日志(relay log)中: 3)从服务器执行中继日志中的事件,把更改应用到自己的数据上. 在生

  • mysql主从数据库不同步的2种解决方法

    今天发现Mysql的主从数据库没有同步 先上Master库: mysql>show processlist; 查看下进程是否Sleep太多.发现很正常. show master status; 也正常. mysql> show master status; +-------------------+----------+--------------+-------------------------------+ | File | Position | Binlog_Do_DB | Binlo

  • Ubuntu配置Mysql主从数据库

    本次环境:虚拟机下 服务器:Ubuntu 14.04 LTS 数据库: 5.5.37 端口:3306 主IP:192.168.63.133 从IP:192.168.63.134 授权账号: user:suxh password:111111 好了交代完环境:我们直接配置: 第一步:主从两台服务器要有同样的数据库(需要同步的)这里用的是backup 数据库(不多说了,在同步开始前,把主库的复制一份到从库就行了) 第二步配置主(master)数据库 编辑/etc/my.cnf 主要是开启二进制日志

  • mysql数据库互为主从配置方法分享

    mysql主从配置小记: 共有四台机器:A(10.1.10.28),B(10.1.10.29),C(10.1.10.30),D(10.1.10.31). 配置后结果:A-C互为主从,B为A的slave,D为C的slave. 0)准备工作 在四台机器上面安装好mysql后,创建用于同步的账号. 添加账户: 复制代码 代码如下: INSERT INTO user (Host,User, Password,Select_priv,Insert_priv,Update_priv,Delete_priv,

  • 减少mysql主从数据同步延迟问题的详解

    基于局域网的master/slave机制在通常情况下已经可以满足'实时'备份的要求了.如果延迟比较大,就先确认以下几个因素: 1. 网络延迟2. master负载3. slave负载一般的做法是,使用多台slave来分摊读请求,再从这些slave中取一台专用的服务器,只作为备份用,不进行其他任何操作,就能相对最大限度地达到'实时'的要求了 另外,再介绍2个可以减少延迟的参数 –slave-net-timeout=seconds  参数含义:当slave从主数据库读取log数据失败后,等待多久重新

  • linux下指定mysql数据库服务器主从同步的配置实例

    一. 概念: ① 数据库同步  (主从同步 --- 主数据库写的同时 往从服务器写数据)② 数据库同步  (主主同步 --- 两台数据库服务器互相写数据) 二. 举例数据库服务器(A) 主数据库   IP:192.168.1.134数据库服务器(B) 主数据库   IP:192.168.1.138两台服务器同步的用户名为: bravedu    密码: brave123 一.主数据库操作设置(A):① 创建同步用户名 允许连接的 用户IP地址  (非本机IP) 复制代码 代码如下: grant

  • MYSQL主从数据库同步备份配置的方法

    下文分步骤给大家介绍的非常详细,具体详情请看下文吧. 一.准备 用两台服务器做测试: Master Server: 192.0.0.1/Linux/MYSQL 4.1.12 Slave Server: 192.0.0.2/Linux/MYSQL 4.1.18 做主从服务器的原则是,MYSQL版本要相同,如果不能满足,最起码从服务器的MYSQL的版本必须高于主服务器的MYSQL版本 二.配置master服务器 1. 登录Master服务器,编辑my.cnf #vim /etc/my.cnf 在[m

随机推荐