执行前临时调整会话参数,适配超大表场景:
SET SESSION tidb_analyze_mem_quota = 8589934592;
SET SESSION tidb_analyze_concurrency = 2;
调整 ANALYZE 轻量参数,减少采样量、限制并发,让 ANALYZE 轻量化执行
有啥参考吗 ![]()
可以先试着定位ANALYZE失败的核心原因
在TiDB 的日志tidb.log ,搜索关键词 analyze table看一下具体描述
还有可以通过分表分区试试
加并行
这点数据不至于的,自动analyze有12小时的限制,可以通过系统变量改。
但是手动analyze速度很快,30多亿行的数据个把小时就完事了。