关于MySQL主从不同步问题

本文介绍了因主从同步导致的手机终端无法获取最新数据问题的排查与解决过程。通过定位到主从key自增主键不一致的问题所在,详细记录了如何检查、修复及同步数据的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天线上出现了数据更新后在手机终端无法获取最新数据的问题。

仔细查看了一下,刚开始认为是ActiveMQ消息队列阻塞导致无法及时更新缓存(原来出现过1次)。

可手工删除redis中对应的key后还是无法重新reload数据,这才意识到是主从同步出了问题。

原来是某应用曾经连错mysql并向slave中新写入了几条数据,后来改为连master,并把写入slave的数据重新写入master表里。导致主从key自增主键不一致使主从同步失效。

简单记录一下解决办法:

1、用root账号登陆slave,执行show slave status;

此处打印出A表同步时insert错误信息(主键冲突)。

2、删除slave机A表中新写入的数据。

3、停止slave:stop slave

4、设置同步时忽略1步错误:set global sql_slave_skip_counter = 1;

5、重启slave:start slave; 再次查看show slave status,无异常信息。

6、连master,先将A表导出为sql脚本。删除A表新写入的数据,将sql脚本中删掉的数据修改为slave没有使用过的id,执行sql重新insert到master的A表.

7、连slave查看A表,发现master中写入的数据已同步,问题解决。

注:

查看当前表自增主键使用情况:show create table A

其中AUTO_INCREMENT表示当前表下一个将使用的主键值。

 

参考资料:

哪些原因会导致mysql主从数据不一致:http://www.dewen.org/q/670

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值