如何关闭running状态的表分析job

【 TiDB 使用环境】生产环境
【 TiDB 版本】v6.5.5
【复现路径】做过哪些操作出现的问题

集群手工定时配置了表分析,由于采样过大导致现在都堆积在running状态,如何关闭这些定时分析

我用kill process_id发现不行
select id,process_id,update_time,start_time,end_time,state,table_schema from mysql.analyze_jobs where table_name=‘xxx’ order by update_time desc;
【附件:截图/日志/监控】

看图片

我现在的集群没设置时间,阀值也是默认0.5。
现在集群堆积这些Job是我11月的时候配的定时任务。现在都是running状态,如何关闭这些running状态的表分析job?

image
show analyze status where state=‘running’;
列出如上process_id,为何Kill 不掉呢

去执行收集脚本的tidb-server实例上呢

当时连接的时候用的负载IP,现在手工到两个server上kill process_id或kill tidb process_id都杀不掉

你看你的tidb版本

±-------------------+
| version() |
±-------------------+
| 5.7.25-TiDB-v6.5.5 |
±-------------------+

此处可不可能是一个bug?
在表分析的时候由于采样过大导致server重启,但是在mysql.analyze_jobs表里一直显示running状态。
但是在两台server上show processlist却没有表分析的process_id。

关闭自动analyze
show variables like ‘tidb_enable_auto_analyze’;
set GLOBAL tidb_enable_auto_analyze=off;

试下重启大法

自动关闭正在执行的analyze
set global tidb_max_auto_analyze_time =18600; 即时生效,在设置之前启动的超过这个时间也被kill;
18600 设置一个小值

重启某个server节点,可以将该节点的show analyze status where state=‘running’;里的任务清空。但是v6之后任务近7天内的好像会都记录在mysql.analyze_jobs里。

你这不是关闭定时分析吧,是删除正在运行的分析任务吧

我也试了杀不了

调整统计分析 的配置参数度一下