TiDB Binlog Relay Log

    下游集群达到一致的状态是指:下游集群的数据等同于上游设置了 的快照。

    checkpoint 状态一致性是指:Drainer checkpoint 通过 consistent 保存了同步的一致性状态。Drainer 运行时 consistentfalse,Drainer 正常退出后 更新为 true

    Drainer 开启 relay log 后会先将 binlog event 写到磁盘上,然后再同步给下游集群。如果上游集群不可用,Drainer 可以通过读取 relay log 把下游集群恢复到一个一致的状态。

    如果 Drainer 启动时无法连接到上游集群的 PD,并且探测到 checkpoint 的 consistent = false,此时会尝试读取 relay log,并将下游集群恢复到一致的状态。然后 Drainer 进程将 checkpoint 的 consistent 设置为 后主动退出。

    Relay log 的清理(GC)机制

    Drainer 在运行时,如果确认已经将一个 relay log 文件的全部数据都成功同步到下游了,就会马上删除这个文件,所以 relay log 不会占用过多空间。一个 relay log 文件大小达到 10MB(默认)时就会做切分,数据开始写入新的 relay log 文件。

    1. # 保存 relay log 的目录,空值表示不开启。
    2. # 只有下游是 TiDB 或 MySQL 时该配置才有生效。