diff --git a/tidb-binlog/tidb-binlog-configuration-file.md b/tidb-binlog/tidb-binlog-configuration-file.md index f97bc7fdcac0..9cfb33c88ba4 100644 --- a/tidb-binlog/tidb-binlog-configuration-file.md +++ b/tidb-binlog/tidb-binlog-configuration-file.md @@ -305,6 +305,14 @@ tbl-name = "~^a.*" 默认:`false` +#### load-schema-snapshot + +- 用于设置 Drainer 加载表信息的方式。 +- 当设置为 `false` 时,Drainer 会通过重播历史中的所有 DDL 操作,推导出特定 schema version 时各张表的 table schema。这种方式需要处理从初始状态到目标 schema version 之间的所有 DDL 变更,可能涉及大量的数据处理和重放。 +- 当设置为 `true` 时,Drainer 会直接读取 checkpoint TS 时的表信息。由于直接读取特定时间点的表信息,这种方式通常更加高效。但它受到 GC 机制的限制,因为 GC 可能会删除旧的数据版本。如果 checkpoint TS 过旧,对应时间点的表信息可能已被 GC 删除,导致无法直接读取。 +- 配置 Drainer 时,应根据实际需求选择是否直接读取 checkpoint TS 时的表信息。如果需要确保数据的完整性和一致性,且能接受处理大量 DDL 变更,建议设置为 `false`。如果优先考虑效率和性能,并能确保 checkpoint TS 在 GC 安全点之后,建议设置为 `true`。 +- 默认:`false` + ### syncer.to 不同类型的下游配置都在 `syncer.to` 分组。以下按配置类型进行介绍。