oracle的_OPTIMIZER_IGNORE_HINTS隱含參數


  • 隱含參數_OPTIMIZER_IGNORE_HINTS參數的使用

Oracle推出了一個隱含參數_OPTIMIZER_IGNORE_HINTS,取值為TRUE/FALSE,缺省值是FALSE,也就是說Oracle可以通過將該隱含參數設置為TRUE,使得Oracle優化器忽略語句中所有的Hint。

顯然,Oracle提供此參數的目的就是在不修改應用前提下,忽略所有Hint,讓Oracle優化器自己來選擇執行路徑。Oracle也是認為在數據庫版本升級之后,原有Hint可能不僅起不到好作用,反而會起到反作用了。Oracle也是認為在新版本下,沒有這些Hint,Oracle可能會運行得更好。

如何查詢隱藏參數的腳本:

---查詢所有的隱藏參數
set linesize 132
column name format a30
column value format a25
select
  x.ksppinm  name,
  y.ksppstvl  value,
  y.ksppstdf  isdefault,
  decode(bitand(y.ksppstvf,7),1,'MODIFIED',4,'SYSTEM_MOD','FALSE')  ismod,
  decode(bitand(y.ksppstvf,2),2,'TRUE','FALSE')  isadj
from
  sys.x$ksppi x,
  sys.x$ksppcv y
where
  x.inst_id = userenv('Instance') and
  y.inst_id = userenv('Instance') and
  x.indx = y.indx and
  x.ksppinm like '%_&par%'
order by
  translate(x.ksppinm, ' _', ' ')
/
--查詢某一個隱藏參數的值
SELECT   ksppinm, ksppstvl, ksppdesc  
  FROM   x$ksppi x, x$ksppcv y  
 WHERE   x.indx = y.indx AND  ksppinm = '&yincang';

 


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com