19.2.4控制自适应优化
在Oracle数据库中,自适应查询优化是优化器根据运行时收集的统计信息调整执行计划的过程。
设置以下初始化参数时,将启用自适应计划:
OPTIMIZER_ADAPTIVE_PLANS是TRUE(默认)OPTIMIZER_FEATURES_ENABLE是12.1.0.1或以后OPTIMIZER_ADAPTIVE_REPORTING_ONLY是FALSE(默认)
如果OPTIMIZER_ADAPTIVE_REPORTING_ONLY将设置为true,则自适应优化将在仅报告模式下运行。在这种情况下,数据库会收集自适应优化所需的信息,但不会更改计划。自适应计划始终选择默认计划,但是数据库会像参数设置为那样收集有关执行的信息false。
设置以下初始化参数时,将启用自适应统计信息:
OPTIMIZER_ADAPTIVE_STATISTICS是TRUE(默认值为FALSE)OPTIMIZER_FEATURES_ENABLE是12.1.0.1或以后
假设条件
本教程假定以下内容:
- 该
OPTIMIZER_FEATURES_ENABLE初始化参数设置为12.1.0.1或更高版本。 - 该
OPTIMIZER_ADAPTIVE_REPORTING_ONLY初始化参数设置为false(默认)。 - 您想要出于测试目的禁用自适应计划,以便数据库仅生成报告。
禁用自适应计划:
- 以方式将SQL * Plus连接到数据库
SYSTEM,然后查询当前设置。例如,运行以下SQL * Plus命令:
SHOW PARAMETER OPTIMIZER_ADAPTIVE_REPORTING_ONLY NAME TYPE VALUE ------------------------------------ ----------- ----- optimizer_adaptive_reporting_only boolean FALSE - 在会话级别,将
OPTIMIZER_ADAPTIVE_REPORTING_ONLY初始化参数设置为true。例如,在SQL * Plus中运行以下SQL语句:
ALTER SESSION SET OPTIMIZER_ADAPTIVE_REPORTING_ONLY=true; - 运行查询。
DBMS_XPLAN.DISPLAY_CURSOR使用+REPORT参数运行。当
+REPORT参数设置,报告显示,该计划优化器会如果已经启用自动重新优化采摘。
也可以看看:
- “ 关于自适应查询优化 ”
- Oracle数据库参考 ,了解
OPTIMIZER_ADAPTIVE_REPORTING_ONLY初始化参数 - Oracle Database PL / SQL软件包和类型参考,以了解
+REPORT该DBMS_XPLAN.DISPLAY_CURSOR函数 的参数
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




