【 TiDB 使用环境】
【概述】表健康度低,手工收集统计信息耗时特别长
【背景】无
【现象】
查看状态有很多正在running状态的记录,并且手工执行analyze非常慢,几条记录的表都需要1分钟以上。
【业务影响】
查询效率低,影响业务使用
【TiDB 版本】v4.0
【附件】
搜索一下tidb节点日志中有没有和analyze相关的报错。
然后用下面这几个参数看能不能提高下速度,用完后改回括号中的默认值:
set global tidb_build_stats_concurrency=20; (4)
set global tidb_distsql_scan_concurrency=20; (15)
set global tidb_index_serial_scan_concurrency=2; (1)
1 个赞
那这些五个月之前的记录怎么清理掉?
1 个赞
方便重启一下不
1 个赞
不方便啊,我看之前的帖子是建议重启tidb-server,这个意思应该是重启tidb节点吧。
1 个赞
是的,重启TiDB节点
1 个赞
现在在做 analyze。相关的优化工作了
1 个赞
主要想问问,那个analyze里的running的记录能删掉么。
另外,手工收集为什么小表都非常慢
1 个赞
1、应该是不能的。2、v4 好像就是有这个问题,不过稍微高点的版本修复了
收到,感谢
我记得 asktug 有类似帖子,一会我帮你确认一下也行,不过你的版本 v4.0 稍微有点低,后面改动不算小,有问题,就算修复了,难以合并到 v4.0 ,咱们可以考虑一下 高版本(先等等也行,analyze 优化工作,应该快了)
明白
优化后是会在以前版本修复还是放在新的高版本里
新的,v4.0 的是够呛了,估计只能 v5.2 以后的版本
估计v4.x只做bug的fix了,优化就别想了
试下kill tidb 会话ID
都过去5个月了,哪还有会话ID
此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。