扫码阅读
手机扫码阅读
数据库|实操硬核干货之监控告警处理
818 2023-09-23
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
查看原文:数据库|实操硬核干货之监控告警处理
文章来源:
神州数码云基地
扫码关注公众号
摘要
监控面板显示tidb_server_critical_error_total
的值不为0,指示TiDB中的binlog写入失败,可能会影响下游系统的数据同步。本文作者为高级数据库运维工程师soy sauce,分享监控告警的处理方法,并结合个人实践给出解决策略。
01原理分析
为了保护TiDB主库运行,可以开启binlog.ignore-error
参数,这样在pump和drainer组件同步数据时,即使binlog写入失败也不会使主集群不可用。作者提到,与Oracle DataGuard相比,TiDB提供了在下游数据和上游数据不一致的情况下保持主库业务连续性的选项。
02现象
监控binlog的写入与跳过情况,可以通过访问http://127.0.0.1:10080/info/all
和检查binlog_status
的状态来追踪。
03处理方式
根据下游同步的三种情况进行处理:
- 同步任务取消:下线Pump和Drainer,编辑配置文件关闭binlog,并重启tidb-server。
- 文件同步任务异常:使用API恢复binlog或重启tidb-server,并重新全备。
- 灾备同步任务异常:恢复后监控checkpoint的变化确认是否正常。
04skip binlog出现的常见情况
常见skip binlog的情况包括pump磁盘空间不足以及大事务超过grpc限制。
05延伸问题
如果skip的binlog中包含DDL操作,可能导致drainer异常重启并报错找不到表ID。社区中有相关案例讨论。
文章最后,作者邀请读者加入讨论群交流,并推荐关注神州数码云基地编程大法的技术前沿内容。
想要了解更多内容?
查看原文:数据库|实操硬核干货之监控告警处理
文章来源:
神州数码云基地
扫码关注公众号
神州数码云基地的其他文章
加入社区微信群
与行业大咖零距离交流学习
软件研发质量管理体系建设
白皮书上线