mysql 主从数据不一致,提示: Slave_SQL_Running: No 的解决方法
程序员文章站
2022-06-27 15:11:56
本文实例讲述了mysql 主从数据不一致,提示: slave_sql_running no 的解决方法。分享给大家供大家参考,具体如下:在slave服务器上通过如下命令mysql> show s...
本文实例讲述了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 主从数据不一致,提示: Slave_SQL_Running: No 的解决方法
-
数据库还原提示MySQL server has gone away 的解决方法
-
mysql主从同步不一致后的解决方法
-
mysql数据库主从不同步的解决方法_MySQL
-
mysql主从数据库不同步的2种解决方法_MySQL
-
MySQL导入数据提示max_allowed_packet错误的解决方法_MySQL
-
mysql主从数据库不同步的2种解决方法_MySQL
-
处理MySQL主从库数据不一致的问题【Slave_SQL_Running: No】
-
MySQL数据库主从不同步的解决方法