动态统计信息是一种优化技术,其中数据库使用递归SQL扫描表中块的随机小样本。
样本扫描估计谓词选择性。使用这些估计,数据库可以为未分析的细分确定更好的默认统计信息,并验证其估计。默认情况下,当优化器统计信息丢失,过时或不足时,动态统计信息将在解析期间自动运行递归SQL,以扫描表块的少量随机样本。
动态统计级别控制都在数据库云集动态统计和样本,优化程序使用,收集统计数据的大小。
使用OPTIMIZER_DYNAMIC_SAMPLING
初始化参数或语句提示来设置动态统计信息级别。
注意:
在Oracle Database 12c第1版(12.1)之前的版本中,动态统计信息称为动态采样。
下表描述了动态统计信息的级别。请注意以下几点:
- 如果
OPTIMIZER_DYNAMIC_STATISTICS
为TRUE
,并且没有禁用动态统计信息,则当SQL语句使用并行执行时,数据库可以选择使用动态统计信息。 - 如果
OPTIMIZER_ADAPTIVE_STATISTICS
为TRUE
,则当存在相关的SQL计划指令时,优化器将使用动态统计信息。数据库将结果统计信息保存在SQL计划指令存储中,以使其可用于其他查询。
表12-5动态统计级别
水平 | 当优化器使用动态统计信息时 | 样本量(块) |
---|---|---|
0 | 不要使用动态统计信息。 | 不适用 |
1个 | 对所有没有统计信息的表使用动态统计信息,但前提是必须满足以下条件:
| 32 |
2 | 如果语句中至少有一个表没有统计信息,请使用动态统计信息。这是默认值。 | 64 |
3 | 如果满足以下任一条件,请使用动态统计信息:
| 64 |
4 | 如果满足以下任一条件,请使用动态统计信息:
| 64 |
5 | 标准与第4级相同,但是数据库使用不同的样本量。 | 128 |
6 | 标准与第4级相同,但是数据库使用不同的样本量。 | 256 |
7 | 标准与第4级相同,但是数据库使用不同的样本量。 | 512 |
8 | 标准与第4级相同,但是数据库使用不同的样本量。 | 1024 |
9 | 标准与第4级相同,但是数据库使用不同的样本量。 | 4086 |
10 | 标准与第4级相同,但是数据库使用不同的样本量。 | 所有块 |
11 | 当优化器认为必要时,数据库会自动使用自适应动态采样。 | 自动确定 |
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
Oracle Concepts(Oracle 19c):07 SQL
Ryan Bai
1014次阅读
2025-04-09 10:57:11
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
563次阅读
2025-04-15 17:24:06
【纯干货】Oracle 19C RU 19.27 发布,如何快速升级和安装?
Lucifer三思而后行
486次阅读
2025-04-18 14:18:38
Oracle SQL 执行计划分析与优化指南
Digital Observer
459次阅读
2025-04-01 11:08:44
XTTS跨版本迁移升级方案(11g to 19c RAC for Linux)
zwtian
454次阅读
2025-04-08 09:12:48
墨天轮个人数说知识点合集
JiekeXu
452次阅读
2025-04-01 15:56:03
【ORACLE】记录一些ORACLE的merge into语句的BUG
DarkAthena
442次阅读
2025-04-22 00:20:37
Oracle数据库一键巡检并生成HTML结果,免费脚本速来下载!
陈举超
429次阅读
2025-04-20 10:07:02
【ORACLE】你以为的真的是你以为的么?--ORA-38104: Columns referenced in the ON Clause cannot be updated
DarkAthena
417次阅读
2025-04-22 00:13:51
Oracle 19c RAC更换IP实战,运维必看!
szrsu
401次阅读
2025-04-08 23:57:08