备库不能应用事务&Slave_SQL_Running No

MySQL同步故障:" Slave_SQL_Running:No"
show slave status G
 
Slave_SQL_Running: No
 
1.程序可能在slave上进行了写操作
2.也可能是slave机器重起后,事务回滚造成的,一般是事务回滚造成的:
解决办法一
stop slave ;
set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
start slave ;
 
解决办法二
#当Slave_SQL_Running和Slave_IO_Running都正常但show processlist中不能应用事务时,也可以用change master重新配置主从复制
--如果是由于备库数据冲突造成的,需要改变日志位置
--首先停掉Slave服务:slave stop
--到主服务器上查看主机状态:记录File和Position对应的值,进入master
show master status;
 
+----------------------+----------+--------------+------------------+
| File                 | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+----------------------+----------+--------------+------------------+
| localhost-bin.000094 | 33622483 |              |                  | 
+----------------------+----------+--------------+------------------+
 
#然后到slave服务器上执行手动同步:
change master to
master_host='master_ip',
master_user='user',
master_password='pwd',
master_port=3306,
master_log_file=localhost-bin.000094',
master_log_pos=33622483 ;
 
--参考by me
change master to master_log_file=localhost-bin.000094',master_log_pos=33622483 ;
start slave ;
show slave status G
 
原文地址:https://www.cnblogs.com/buffercache/p/14146226.html