weidadadechuntian
2021-10-15 15:09
采纳率: 0%
浏览 213

数据库MGR宕机后重启顺序异常导致的主从库数据不同步

公司的一个项目,MGR采用的是一写多读的单主模式,用proxysql处理读写分离,环境是centOS7.6,数据库版本是5.7.32。

MGR在正常情况下使用没有任何问题,但是问题出在宕机之后重启,如果重启顺序正常(先主后从),也没有问题,从会自动同步主的数据。

但是如果是启动顺序异常,之前的主节点现在以从的身份加入到集群中,就会经常出错。我做了一个示意图:

img

一开始两个数据库都只有1,2两条数据。

s1断开之后,s2变为主继续使用,然后加了一条数据300。

这时候s2宕机了,这时候需要重启s1和s2,如果s1是从s2是主,没问题,数据自动同步。但是反过来,s1主,s2从,s1不会更新自己的数据。

在t5这个时间段之后,s2比s1多一条数据,但是此时集群中已经主从不同步了。

想问问大家有没有方法避免或者解决方案,或者是数据库同步方案。

  • 好问题 提建议
  • 收藏

3条回答 默认 最新

  • 常山赵国轩 2021-10-16 15:00

    主库数据的备份直接导入从库,然后重新启动

    评论
    解决 1 无用
    打赏 举报
  • YFSafe 2021-10-20 22:56

    主库数据的备份直接导入从库,然后重新启动...

    评论
    解决 无用
    打赏 举报
  • 炎黄子孙__ 2021-10-22 17:39

    navicat 自带数据同步的工具,你可以看看
    【工具】-【数据同步】,可以让navicat帮你分析两个数据库的差别,然后导出insert和delete语句。

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题