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

本站中文解释

SKIP_UNUSABLE_INDEXES 参数是用于控制Oracle引擎在执行SELECT语句时是否跳过无法使用的索引。设置该参数为TRUE时,Oracle引擎将跳过无法使用的索引,并进入下一个有效的索引或全表扫描;设置该参数为FALSE时,Oracle引擎将会使用所有的索引,即使它们无法被使用。

正确的设置方法为:
1、在sqlplus终端中进入系统用户,并执行以下命令:
SQL> ALTER SESSION SET SKIP_UNUSABLE_INDEXES = TRUE;

2、可以在init.ora文件中添加下面这一配置项:
SKIP_UNUSABLE_INDEXES=TRUE

官方英文解释

SKIP_UNUSABLE_INDEXES enables or disables the use and reporting of tables with unusable indexes or index partitions.

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

If a SQL statement uses a hint that forces the usage of an unusable index, then this hint takes precedence over initialization parameter settings, including SKIP_UNUSABLE_INDEXES. If the optimizer chooses an unusable index, then an ORA-01502 error will result. (See Oracle Database
Administrator’s Guide
for more information about using hints.)

Values

  • true

    Disables error reporting of indexes and index partitions marked UNUSABLE. This setting allows all operations (inserts, deletes, updates, and selects) on tables with unusable indexes or index partitions.

    Note:

    If an index is used to enforce a UNIQUE constraint on a table, then allowing insert and update operations on the table might violate the constraint. Therefore, this setting does not disable error reporting for unusable indexes that are unique.

  • false

    Enables error reporting of indexes marked UNUSABLE. This setting does not allow inserts, deletes, and updates on tables with unusable indexes or index partitions.

See Also:

Oracle Database SQL
Language Reference
for more information about hints


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