diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index 7362115c829d..d1bde79602f5 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -465,9 +465,9 @@ TiKV 配置文件比命令行参数支持更多的选项。你可以在 [etc/con > **警告:** > > - 你**只能**在部署新的 TiKV 集群时将 `enable-ttl` 的值设置为 `true` 或 `false`,**不能**在已有的 TiKV 集群中修改该配置项的值。由于该配置项为 `true` 和 `false` 的 TiKV 集群所存储的数据格式不相同,如果你在已有的 TiKV 集群中修改该配置项的值,会造成不同格式的数据存储在同一个集群,导致重启对应的 TiKV 集群时 TiKV 报 "can't enable ttl on a non-ttl instance" 错误。 -> - 你**只能**在 TiKV 集群中使用 `enable-ttl`,**不能**在有 TiDB 节点的集群中使用该配置项(即在此类集群中把 `enable-ttl` 设置为 `true`),否则会导致数据损坏、TiDB 集群升级失败等严重后果。 +> - 你**只能**在 TiKV 集群中使用 `enable-ttl`。只有在配置了 `storage.api-version = 2` 的情况下,才能在有 TiDB 节点的集群中使用该配置项(即在此类集群中把 `enable-ttl` 设置为 `true`),否则会导致数据损坏、TiDB 集群升级失败等严重后果。 -+ TTL 即 Time to live。数据超过 TTL 时间后会被自动删除。用户需在客户端写入请求中指定 TTL。不指定 TTL 即表明相应数据不会被自动删除。 ++ [TTL](/time-to-live.md) 即 Time to live。数据超过 TTL 时间后会被自动删除。用户需在客户端写入请求中指定 TTL。不指定 TTL 即表明相应数据不会被自动删除。 + 默认值:false ### `ttl-check-poll-interval` @@ -489,9 +489,9 @@ TiKV 配置文件比命令行参数支持更多的选项。你可以在 [etc/con + 可选值: + `1`:使用 API V1。不对客户端传入的数据进行编码,而是原样存储。在 v6.1.0 之前的版本,TiKV 都使用 API V1。 + `2`:使用 API V2: - + 数据采用多版本并发控制 (MVCC) 方式存储,其中时间戳由 tikv-server 从 PD 获取(即 TSO)。 + + 数据采用[多版本并发控制 (MVCC)](/glossary.md#multi-version-concurrency-control-mvcc) 方式存储,其中时间戳由 tikv-server 从 PD 获取(即 TSO)。 + 数据根据使用方式划分范围,支持单一集群 TiDB、事务 KV、RawKV 应用共存。 - + 需要同时设置 `storage.enable-ttl = true`。由于 API V2 支持 TTL 特性,因此强制要求打开 `enable-ttl` 以避免这个参数出现歧义。 + + 需要同时设置 `storage.enable-ttl = true`。由于 API V2 支持 TTL 特性,因此强制要求打开 [`enable-ttl`](#enable-ttl) 以避免这个参数出现歧义。 + 启用 API V2 后需要在集群中额外部署至少一个 tidb-server 以回收过期数据。该 tidb-server 可同时提供数据库读写服务。可以部署多个 tidb-server 以保证高可用。 + 需要客户端的支持。请参考对应客户端的 API V2 使用说明。 + 从 v6.2.0 版本开始,你可以通过 [RawKV CDC](https://tikv.org/docs/latest/concepts/explore-tikv-features/cdc/cdc-cn/) 组件实现 RawKV 的 Change Data Capture (CDC)。