TiDB 中 tikv_gc_mode 为啥在系统参数和配置参数中查询不到?

请教一下:为啥tidb 中tikv_gc_mode 为啥在系统参数(show variables )和配置参数(show config)中查询不到?

这样也查不到么?

select VARIABLE_NAME, VARIABLE_VALUE from mysql.tidb where VARIABLE_NAME like “tikv_gc%”;

2 个赞

来自 @db_user 的回复:


https://docs.pingcap.com/zh/tidb/v4.0/garbage-collection-configuration#tikv_gc_mode

2 个赞

从mysql.tidb 可以查询,但是感觉很突兀,没有统一。同时和系统变量或者系统配置 的查询方式不一样,系统配置里面应该包含tikv_gc_mode

从mysql.tidb 可以查询,但是感觉很突兀,没有统一。同时和系统变量或者系统配置 的查询方式不一样,系统配置里面应该包含tikv_gc_mode,应该做到规范统一

目前官方文档中,没有将此数据列入 系统变量或者配置文件参数。如果确有需要,可以提交需求。:handshake:

那在使用过程中如何区分哪些配置参数从mysql.tidb获取,哪些通过show config 获取?

SHOW CONFIG语句用于展示 TiDB 各个组件当前正在应用的配置,请注意,配置与系统变量作用于不同维度,请不要混淆,如果希望获取系统变量信息,请使用 SHOW VARIABLES 语法。

mysql.tidb是系统表

另外,关于GC有这么一个说明:
在 TiDB 5.0 之前的版本中,GC 是通过系统表 mysql.tidb 进行配置的。从 TiDB 5.0 版本起,GC 仍然可以通过系统表 mysql.tidb 进行配置,但建议你使用系统变量进行配置,这样可以确保对配置的任何更改都能得到验证,防止造成异常行为 (#20655)。

https://docs.pingcap.com/zh/tidb/stable/garbage-collection-configuration#tidb-50-引入的变化

从 TiDB 5.0 版本起,GC但建议你使用系统变量进行配置。但是tikv_gc_mode 在show variables 中没有,还可以使用系统变量么配置吗

:face_with_hand_over_mouth:是可以使用系统变量,但不是全部都使用系统变量,具体哪些可以使用系统变量,需要参考变量说明

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。