TiKV 数据备份咨询

当前看 TiKV 本身通过 tikv br 提供了 数据备份与恢复的工具,而 tidb 的 br 中也实验性的提供了 tikv 备份的功能。

基于 独立使用 tikv 而不使用 tidb 的场景,想咨询如下问题:

  • tikv br 说明书中提到自己是 “RawKV” 的备份,如果使用 txnKV 接口与 tikv 进行交互,那么使用 RawKV 备份并恢复是否可行呢? txnKV 相关的事务信息是否会被影响呢
  • tidb br 的命令里提供了 实验性的 br backup raw 命令,该命令与 tikv 的 br 是否有区别?
  • tidb br 的命令里提供了 实验性的 br backup txn 命令,该命令是否可用于 tikv 本身的备份呢?

https://docs.pingcap.com/zh/tidb/stable/tikv-configuration-file#api-version-从-v610-版本开始引入

这几个问题都和api-version参数的设置有关。

* tikv br 说明书中提到自己是 “RawKV” 的备份,如果使用 txnKV 接口与 tikv 进行交互,那么使用 RawKV 备份并恢复是否可行呢? txnKV 相关的事务信息是否会被影响呢

api-version=1可行,api-version=2则不可行,因为当api-version=2,文档上面写的很清楚

  • 数据根据使用方式划分范围,支持单一集群 TiDB、事务 KV、RawKV 应用共存。

* tidb br 的命令里提供了 实验性的 br backup raw 命令,该命令与 tikv 的 br 是否有区别?

直接从代码比较,我粗略看了下,大致是一模一样的。

上面是tikv-br

这个是br backup raw,可以看到除了url不一样,里面的代码差不多。不过保险起见还是自己对比一下。

* tidb br 的命令里提供了 实验性的 br backup txn 命令,该命令是否可用于 tikv 本身的备份呢?

这个br backup txn命令我从master上都看不到有。代码上都找不到。不知你从哪里听说的。
即便有,按照api-version的说明,当api-version=1的时候,肯定是可以。如果是2,感觉大概率不行。

厉害,都看源码