解决:主从复制-从机Slave_SQL_Running: No问题

  1. 问题现象:
    解决:主从复制-从机Slave_SQL_Running: No问题_第1张图片

我们可以明显的发现,我们的sql线程已经挂掉了。

  1. 导致这个问题的原因是:
    由于数据的不同步,在执行主从同步的时候,出现了执行不了的sql,导致从机事务回滚,所以sql的进程就被关闭了。

  2. 常见的这个问题的出现方式:

在从机上进行了写操作(非双机热备情况下)。
slave机器重启,事务回滚。
各种原因导致的数据不同步。

解决办法1:

mysql> stop slave;
mysql> set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
mysql> start slave;

这个解决的是因为事务的原因导致的sql进程停止。

解决办法2:

停止从机服务:stop slave;

然后在主机上查看binlog文件的位置:

show master status;
+----------------------+--------------+---------------+----------+
| File           | Position   | Binlog_Do_DB  | Binlog_Ignore_DB |
+----------------------+--------------+---------------+----------+
| XXX-bin.000004 | 33622483   |               |                  | 
+----------------------+---------------+--------------+----------+

然后重新手动同步:

mysql> change master to 
> master_host='master_ip',
> master_user='user', 
> master_password='pwd', 
> master_port=3306, 
> master_log_file=‘XXX-bin.000004’, 
> master_log_pos=33622483 ;

然后启动从服务:start slave;

总结

1. 查看是否和主服务器断开了binlog的同步,
2. 看是否是因为事务问题导致的数据不一致。

————————————————
版权声明:本文为CSDN博主「王啸tr1912」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/tr1912/article/details/81316093

你可能感兴趣的:(Mysql数据库)