是否启用定时分析功能(enable_analyze)
📄字数 733
👁️阅读量 加载中...
引入版本
v11.0.0
功能描述
是否启用定时分析功能。
参数属性
| 属性 | 属性值 |
|---|---|
| 参数类型 | BOOLEAN |
| 默认值 | TRUE |
| 取值范围 | TRUE,FALSE |
| 影响范围 | 系统级 |
| 修改方式 | 在线修改,立即生效 |
使用场景说明
- 定时分析由系统定时作业负责调度,分析表维护线程负责处理。
- 该参数控制系统对已打开表的分析行为(所有堆表均支持定时分析)。
| enable_analyze | 作用及影响 |
|---|---|
| true | 每天在固定的分析时间(analyze_time)尝试对表进行统计分析。 |
| false | 关闭定时分析功能。 |
系统定时分析可以统计表数据中各个字段的最大值、最小值、离散度和重复度等信息,这些统计信息可辅助查询语句规划出更合适的执行计划。
系统定时分析并不一定会对表上各字段的统计信息产生更新。
| - | 连续的两次分析动作间隔内表上 发生更改的行数占总行数的百分 比达到 analyze_threshold | 连续的两次分析动作间隔内表上 发生更改的行数占总行数的百分 比未达到 analyze_threshold |
|---|---|---|
| 表上没有统计信息 | 更新统计信息 | 更新统计信息 |
| 表上已有统计信息 | 更新统计信息 | 不更新统计信息 |
注意
- 默认情况下(analyze_mode = 1 且未对表对象上的字段显式指定分析标记),自动分析只会统计分析索引(必须是 B 树索引)字段。
- analyze_mode = 1 且表对象的非索引字段被显式指定分析标记 1,则该字段也会被自动分析(该字段类型支持比较排序)。
示例
sql
-- 在线修改 enable_analyze
SQL> SET enable_analyze TO true;
-- 在线查看 enable_analyze
SQL> SHOW enable_analyze;