tidb集群版本为v6.1.5,命令行修改tidb_mem_quota_query参数后,reload整个集群就报错

【 TiDB 使用环境】生产环境
【 TiDB 版本】
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
tidb集群版本为v6.1.5,命令行修改tidb_mem_quota_query参数后,reload整个集群就报错:

 {ssh_stderr: , ssh_stdout: [2023/09/11 09:41:13.539 +08:00] [FATAL] [terror.go:292] ["unexpected error"] [error="config file /acdata/tidb-cluster/tidb-deploy/tidb-4000/conf/tidb.toml contained invalid configuration options: tidb_mem_quota_query; check TiDB manual to make sure this option has not been deprecated and removed from your TiDB version if the option does not appear to be a typo"]

查看tidb-server节点上的配置文件,显示有2个参数:
mem-quota-query = 64424509440
tidb_mem_quota_query = 64424509440

使用这个命令tiup cluster edit-config tidb-cluster-name重新编辑集群配置文件,保存退出后,重新reload还是报错:

【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】

命令行是什么方式?直接修改的配置文件
手工删除直接修改的配置文件,然后用edit-config的方式

tiup cluster edit-config tidb-cluster-name

1.命令行执行的是这个命令:
mysql> set global tidb_mem_quota_query = 64424509440;

2.使用edit-config修改保存后,提示mem-quota-query和tidb_mem_quota_query 参数不能共存。

3.手工删除tidb-server的配置文件中的mem-quota-query和tidb_mem_quota_query,重新reload仍然报错。

https://github.com/pingcap/tidb/blob/master/config/config.toml.example

github上的tidb完整配置文件例子里面,就找不到这个参数。

https://docs.pingcap.com/zh/tidb/stable/tidb-configuration-file#tidb-配置文件描述

即便是7.1配置文件的描述都不能设置这个参数。

应该是只能通过client去设置。但是设置一次后应该是可以持久化的。

推测不通过配置文件修改的原因,应该是这个参数可能修改的比较频繁,而修改配置文件后,就需要reload,这显然对线上系统是难以接受的。

官网写的很清楚6.1这个参数转化为系统变量不在通过配置文件配置,mem-quota-query参数也已经删除了


用set 方式改吧

6.1.5版本是不是已经修改成variables了,用set global *****这种方式试试呢?

这个参数是持久化在tikv里面的,不能通过参数文件改

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