暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 19C 启用优化器功能

原创 Asher.HU 2021-02-04
2975


OPTIMIZER_FEATURES_ENABLE初始化参数(或暗示)控制一组优化器相关的功能,这取决于该数据库的版本。

该参数接受与发行版号相对应的有效字符串值的列表之一,例如11.2.0.212.2.0.1您可以使用此参数在数据库升级后保留优化器的旧行为。例如,如果将Oracle Database 12c第1版(12.1.0.2)升级Oracle Database 12c第2版(12.2.0.1),则OPTIMIZER_FEATURES_ENABLE参数的默认值将从更改12.1.0.212.2.0.1

为了向后兼容,您可能不希望由于新版本中的新优化器功能而更改执行计划。在这种情况下,可以设置OPTIMIZER_FEATURES_ENABLE为早期版本。如果升级到新版本,如果你启用新版本中的功能,那么你就不会需要明确设置OPTIMIZER_FEATURES_ENABLE初始化参数。


警告:

Oracle建议不要将OPTIMIZER_FEATURES_ENABLE初始化参数显式设置为早期版本。为避免执行计划更改可能导致SQL性能下降,请考虑改用SQL计划管理。

假设条件

本教程假定以下内容:

  • 您最近将数据库从Oracle Database 12c第1版(12 1.0.2)升级到Oracle Database 12c第2版(12.2.0.1)。
  • 您要保留早期版本中的优化器行为。


要为特定版本启用查询优化器功能:

  1. 使用适当的特权登录到数据库,然后查询当前的优化器功能设置。

    例如,运行以下SQL * Plus命令:

    SQL> SHOW PARAMETER optimizer_features_enable
     
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- --------
    optimizer_features_enable            string      12.2.0.1
    
    复制
  2. 在实例或会话级别设置优化器功能设置。

    例如,运行以下SQL语句将优化程序版本设置为12.1.0.2

    SQL> ALTER SYSTEM SET OPTIMIZER_FEATURES_ENABLE='12.1.0.2';
    复制

    前面的语句恢复了Oracle Database 12c第1版(12.1.0.2)中存在的优化程序功能

也可以看看:

 


「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论