Oracle 参数 OPTIMIZER_ADAPTIVE_PLANS 官方解释,作用,如何配置最优化建议

本站中文解释

OPTIMIZER_ADAPTIVE_PLANS是Oracle中的一种优化器参数,它主要用于收集有关SQL语句执行情况的统计信息,并使用该统计信息来改进SQL查询的性能,从而使最佳执行计划可以更快地得到。

此参数有三个可用值,通常称为模式:TRUE,FALSE和OFF。

TRUE模式中,Oracle将自动收集统计信息(每100次执行)和应用更好的计划。

FALSE模式中,Oracle只会收集统计信息,但不应用更好的计划。

OFF模式中,Oracle无需自动收集统计信息,因此不会改变计划。要应用更好的计划,必须明确调用dbms_stats.gather_plans_statistics。

为了能够正确设置这个参数,管理员需要更好地了解应用对性能要求,以确定是否需要启用该参数,以及是TRUE模式还是FALSE模式,这取决于应用的需求。

如果确定需要启用OPTIMIZER_ADAPTIVE_PLANS,管理员可以使用SQL语句“alter system set OPTIMIZER_ADAPTIVE_PLANS=TRUE/FALSE;”或者脚本ALTER SYSTEM SET OPTIMIZER_ADAPTIVE_PLANS=TRUE/FALSE SCOPE=BOTH;来更新参数的值。管理员可以通过执行SELECT * FROM V$PARAMETER WHERE NAME=’OPTIMIZER_ADAPTIVE_PLANS’语句来查看参数的值。

官方英文解释

OPTIMIZER_ADAPTIVE_PLANS controls adaptive plans. Adaptive plans are execution plans built with alternative choices that are decided at run time based on statistics collected as the query executes.
Property Description

Parameter type

Boolean

Default value

true

Modifiable

ALTER SESSION, ALTER SYSTEM

Modifiable in a PDB

Yes

Range of values

true | false

Basic

No

Oracle RAC

The same value must be set on all instances

Setting this parameter to false disables the following adaptive features:

  • Nested loop join/hash join selection

  • Star transformation bitmap pruning

  • Adaptive parallel distribution method

See Also:

Oracle Database SQL Tuning
Guide
for information about adaptive plans


数据运维技术 » Oracle 参数 OPTIMIZER_ADAPTIVE_PLANS 官方解释,作用,如何配置最优化建议