作者:毛巳煜
RECOVER 导致 TiDB Binlog 同步错误处理
MySQL at Scale. No more manual sharding
RECOVER TABLE | TiDB 官方用户文档
TiDB 是由 PingCAP 研发的一款定位于在线事务处理/在线分析处理(HTAP)的开源融合型数据库产品,实现了一键水平伸缩,强一致性的多副本数据安全,分布式事务,实时 OLAP 等重要特性,目前已广泛应用于金融服务、互联网、制造等行业。
当使用 TiDB Binlog 同步工具时,上游 TiDB 使用 RECOVER TABLE 后,TiDB Binlog 可能会因为下面几个原因造成同步中断:
- 下游数据库不支持 RECOVER TABLE 语句。 类似错误:
check the manual that corresponds to your MySQL server version for the right syntax to use near 'RECOVER TABLE table_name'
。 - 上下游数据库的 GC lifetime 不一样。 类似错误:
snapshot is older than GC safe point 2019-07-10 13:45:57 +0800 CST
。 - 上下游数据库的同步延迟。 类似错误:
snapshot is older than GC safe point 2019-07-10 13:45:57 +0800 CST
。
``
- 先使用 mydumper 将恢复的数据保存到本地
- 删除恢复表
- 让drainer 恢复正常运行
- 重新导入被删除的表
- 查看TiDB Binlog 数据同步是否正常
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。