tidb数据库相关的日志文件类型

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】:4.0.6
  • 【问题描述】:tidb数据库有活动日志和归档日志这个概念吗?比如传统的数据库同步数据到下游有较高的延迟,如果把归档日志文件删除了,那么会造成数据同步失败,不知道tidb这方面是怎么实现的?

若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。

在 tidb 中的增量数据同步,可以通过 TiCDC 来实现,捕获 tikv 的 change log 再同步到下游 tidb/mysql。具体实现原理以及安装部署文档见下述链接:
https://docs.pingcap.com/zh/tidb/stable/ticdc-overview#ticdc-简介

如果增量同步,是为了实现高可用,那么除了借助 tidb 的生态工具,也可以依赖 raft+label 来实现:
https://docs.pingcap.com/zh/tidb/stable/three-data-centers-in-two-cities-deployment#两地三中心部署

tidb数据库有活动日志和归档日志这个概念吗?如果有的话存放位置在哪里?

TiDB 集群本身没有提供 redo do 以及 archive log。

一套集群环境中,每个 raftgroup 依赖 raft 来进行数据同步,会对应的产生 raftlog,依赖多数派来确保高可用性。建议了解下 raft 相关内容:
https://docs.pingcap.com/zh/tidb/stable/tikv-overview#region-与-raft-协议

除此之外,TiDB 的 生态工具如 TiCDC 以及 TiDB-Binlog 分别提供了基于 TiKV 以及基于 TiDB 的捕获数据变化的功能。可根据需求将相应的日志信息同步到不同的下游,如 MySQL,TiDB,Kafka。其中 TiDB-Binlog 的输出经设置后可以为 file。同时,也可以根据需要以此来构建集群间的高可用方案。如有需要,建议了解下生态工具相关的内容:

https://docs.pingcap.com/zh/tidb/stable/tidb-binlog-overview#tidb-binlog-简介
https://docs.pingcap.com/zh/tidb/stable/ticdc-overview#ticdc-简介