1、mysql主从同步异常查询

Slave节点上查看 
mysql> show slave status\G 
Slave_IO_Running: Yes 
Slave_SQL_Running: No 

Seconds_Bebind_Master: 5 

Slave_SQL_Running 值为 NO,或 Seconds_Bebind_Master 值不为 Null可见是Slave不同步


2、解决方法

    1、常见的应对方法是先把从库下线,然后找个半夜三更的时间把应用停掉,重新执行同步(针对数据库量小)

    重新做主从,完全同步 
            该方法适用于主从库数据相差较大,或者要求数据完全统一的情况

   2、原因:

        1. 程序有可能在 slave 上进行了写操作

        2. 也有可能是 slave 机器重启后,事务回滚造成的

       解决方法一:

        忽略错误后,继续同步 
       该方法适用于主从库数据相差不大,或者要求数据可以不完全统一的情况,数据要求不严格的情况 

       msyql> stop slave;

       #表示跳过一步错误,后面的数字可变

       msyql> set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;

       msyql> start slave;

      解决方法二:

      msyql> stop slave; 

      #查看主服务器上当前的 bin-log 日志名和偏移量

      msyql> show master status;

     #获取到如下内容:

    +------------------+----------+--------------+------------------+

| File            | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+------------------+----------+--------------+------------------+

| mysql-bin.000005 |      286 |              |                  |

+------------------+----------+--------------+------------------+

#然后到从服务器上执行手动同步

msyql> change master to

    ->master_host="192.168.10.1",

    ->master_user="user",

    ->master_password="123456",

    ->master_post=3306,

    ->master_log_file="mysql-bin.000005",

    ->master_log_pos=286;

    

msyql> start slave;

文档出自https://blog.csdn.net/sky__liang/article/details/85684615

参考主从不同步问题处理https://www.cnblogs.com/lubing666666/p/4386833.html