1.问题描述

当我们配置好MySQL主主同步时,是可以实现主主同步,但是重启机器后或者其他原因导致MySQL无法同步了。

2.Slave两个关键进程

mysql replication 中slave机器上有两个关键的进程,死一个都不行,一个是​​slave_sql_running​​​,一个是​​Slave_IO_Running​​,一个负责与主机的io通信,一个负责自己的slave mysql进程。

3.如果是Slave_SQL_Running:no:

MySQL数据同步,出现Slave_SQL_Running:no和slave_io_running:no问题的解决方法_sql
解决办法如下:

MariaDB [(none)]> stop slave;                                                      
MariaDB [(none)]> SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1; START SLAVE;
MariaDB [(none)]> start slave;
MariaDB [(none)]> show slave status\G

MySQL数据同步,出现Slave_SQL_Running:no和slave_io_running:no问题的解决方法_mysql_02

4.如果是slave_io_running:no

MySQL数据同步,出现Slave_SQL_Running:no和slave_io_running:no问题的解决方法_mysql_03
解决办法如下:

1、查看主服务器:

MariaDB [(none)]> show master status\G

MySQL数据同步,出现Slave_SQL_Running:no和slave_io_running:no问题的解决方法_服务器_04
2、在从服务器上查看:
MySQL数据同步,出现Slave_SQL_Running:no和slave_io_running:no问题的解决方法_mysql_05
问题所在:发现Master_Log_File没有对应。

3、出现Slave_IO_Running: No的机器上操作:

MariaDB [(none)]> slave stop;                 
MariaDB [(none)]>CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000026', MASTER_LOG_POS=0;
MariaDB [(none)]> slave start;
MariaDB [(none)]> show slave status\G

MySQL数据同步,出现Slave_SQL_Running:no和slave_io_running:no问题的解决方法_服务器_06
问题就解决了!