TiDB Binlog 简介

    TiDB Binlog 支持以下功能场景:

    • 数据同步:同步 TiDB 集群数据到其他数据库

    TiDB Binlog 集群主要分为 Pump 和 Drainer 两个组件,以及 binlogctl 工具:

    从各个 Pump 中收集 Binlog 进行归并,再将 Binlog 转化成 SQL 或者指定格式的数据,最终同步到下游。

    是一个 TiDB Binlog 配套的运维工具,具有如下功能:

    • 获取 TiDB 集群当前的 TSO
    • 查看 Pump/Drainer 状态
    • 修改 Pump/Drainer 状态
    • 暂停/下线 Pump/Drainer
    • 多个 Pump 形成一个集群,可以水平扩容。
    • TiDB 通过内置的 Pump Client 将 Binlog 分发到各个 Pump。
    • Pump 负责存储 Binlog,并将 Binlog 按顺序提供给 Drainer。
    • Drainer 支持 功能,通过 relay log 保证下游集群的一致性状态。
    • TiDB Binlog 与 TiDB v4.0.7 版本开始引入的以下特性不兼容,无法一起使用:

      • TiDB 系统变量 tidb_enable_amend_pessimistic_txn:两个功能存在兼容性问题,一起使用会造成 TiDB Binlog 复制数据不一致的正确性问题。
    • 如果 TiDB Binlog 用于增量恢复,可以设置配置项 db-type="file",Drainer 会将 binlog 转化为指定的 的数据,再写入到本地文件中。这样就可以使用 Reparo 恢复增量数据。

      关于 的取值,应注意:

      • 如果 TiDB 版本 < 2.1.9,则 db-type="pb"
      • 如果 TiDB 版本 > = 2.1.9,则 或 db-type="pb"