首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于行复制的数据漂移

基于行复制的数据漂移
EN

Database Administration用户
提问于 2017-08-08 17:53:57
回答 1查看 825关注 0票数 0

我已经意识到,我的mysql奴隶之一丢失了行。选择主表上的特定表计数: 9605010,从表: 9593831

从站是完全同步的,没有seconds_behind_master,没有错误,没有慢速日志。

主服务器和从服务器版本: mysql Ver 14.14远端5.6.35-80.0,用于debian gnu (x86_64),使用6.3

sync_binlog=1,基于行的复制

我不确定是否使用pt-table-校验和,因为这是一个prod系统。究竟什么会导致rbr上的数据漂移呢?

EN

回答 1

Database Administration用户

回答已采纳

发布于 2017-08-09 04:03:45

没有调查是不可能知道的。可能是在创建从服务器时出错,可能是直接写到从服务器,复制中的错误,以及SET binlog=0应用程序中的错误等等。

更糟糕的是,这很难调查后事实。您需要为数据漂移故障排除做准备。

pt-table-checksum将是你的第一步。这是一个成熟的工具,安全的使用,但问题也是可能的。很可能是锁问题死锁。如果需要特别偏执,我将--chunk-time设置为0.1甚至更少。

查找数据中的差异,检查它(您可能希望使用丁丁b_表格_比较查找丢失/额外/不同的行),并修复不匹配(根据数据漂移的大小使用pt-table-sync或重新构建从属程序)。

并将pt-table-checksum放入cron中。如果一次运行需要很长的时间(比如1-2天),我建议拆分发现部分和警报部分(即重型pt-table-checksum填充percona.checksums和一个轻量级脚本检查percona.checksums和如果发现不一致时发出警告)。在我的系统中,我一直在运行pt-table-checksum

然后,当发现不一致时,检查数据、二进制日志,然后找出它的来源。

票数 2
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/182980

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档