auto_analyze执行的时候,会对业务造成影响,生产环境上,有没有比较好的实践配置

【 TiDB 使用环境】生产环境
【 TiDB 版本】v5.4
【复现路径】触发auto anaylze
【遇到的问题:问题现象及影响】
DML阻塞,查询插入慢,导致业务系统数据库连接池满了,响应慢
【资源配置】
【附件:截图/日志/监控】


  1. 调整手机统计信息时间,在非业务时间 auto analyze
  2. 或者关闭 auto analyze,写脚本手动收集
1 个赞

出现这个问题后,sql的执行计划都显示 stats:pseudo ,是否只能手动收集所有表的统计信息才能解决?

这个意思就是统计信息不准的意思。

可以的,等非业务高峰时间 analyze 下。

有个参数可以关闭的

我觉得,可以开启快速收集统计信息tidb_enable_fast_analyze,并调高修改数据阈值tidb_auto_analyze_ratio才收集统计信息,同时对于那些大表部署手工任务(非业务时间,小样本收集)

我这边在V5.*版本也遇到类似的问题。V6是否缓解了这个问题?比如analyze更快,代价更小。

那就 fast analyze 了,但是这玩意没那么准。

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