查询优化器参数optimizer_features_enable

在每个数据库版本中,Oracle都会在查询优化器中引入或启用新的特性。

如果在升级到一个新的版本后希望保留查询优化器的行为,可以通过设置这个参数或语句级别使用hint。

不同版本优化器的差异https://docs.oracle.com/cd/E11882_01/server.112/e40402/initparams168.htm#REFRN10141

SQL> select value from v$parameter_valid_values where name ='optimizer_features_enable';

VALUE
--------------------------------------------------------------------------------
8.0.0
8.0.3
8.0.4
8.0.5
8.0.6
8.0.7
8.1.0
8.1.3
8.1.4
8.1.5
8.1.6

VALUE
--------------------------------------------------------------------------------
8.1.7
9.0.0
9.0.1
9.2.0
9.2.0.8
10.1.0
10.1.0.3
10.1.0.4
10.1.0.5
10.2.0.1
10.2.0.2

VALUE
--------------------------------------------------------------------------------
10.2.0.3
10.2.0.4
10.2.0.5
11.1.0.6
11.1.0.7
11.2.0.1
11.2.0.2
11.2.0.3
11.2.0.4
12.1.0.1
12.1.0.2

VALUE
--------------------------------------------------------------------------------
12.2.0.1
12.2.0.1.1

35 rows selected.

很多人会遇到11g升级到12c后,报表及ETL性能严重下降

检查SQL执行计划,发现同一个SQL,12c生成的执行计划跟11g的执行计划差异很大。

把参数 OPTIMIZER_FEATURES_ENABLE 调回11g之后,报表及ETL的性能问题消失。因此怀疑是Oracle 12c优化器的问题导致

SQL>show parameter optimizer_features_enable

ALTER SYSTEM SET optimizer_features_enable = '11.2.0.4';

最新文章

  1. C#进阶系列——WebApi 路由机制剖析:你准备好了吗?
  2. Learning Spark 第四章——键值对处理
  3. 自己实现简单的string类
  4. 烂泥:nginx同时支持asp.net与php
  5. nginx环境下配置nagios-关于nagios配置文件nginx.conf
  6. ext4 文件系统的一些记录
  7. 转自 处理老版PIL 到 pillow
  8. FragmentTransaction.addToBackStack无效的问题
  9. Dijkstra算法模拟讲解
  10. IE8下div中2个button仅仅显示一个
  11. stl 生产全排列 next_permutation
  12. Python练习五
  13. Spring 手动 提交事务
  14. Solr搭建真实项目
  15. 【CF671E】Organizing a Race 单调栈+线段树
  16. Linux改变文件所有者
  17. linux 学习第十一天
  18. 20145229吴姗姗web安全基础实践
  19. python's sixteenth day for me 员工信息表
  20. app接口开发(php)

热门文章

  1. Flurl 组件使用
  2. shell_Day06
  3. 宝塔部署 vue + thinkphp
  4. 插入排序C语言
  5. Linux 第七节(LVM,网卡配置)
  6. Mac连接交换机
  7. OM6621P系列国产M4F内核低功耗BLE5.1 SoC蓝牙芯片
  8. 4 - 高级加密标准 (AES)
  9. SAP SD VA01 销售订单中的自动价格更新
  10. linux交叉编译libiconv