从Oracle9i开始,Oracle引入了Peeking of User-Defined Bind Variables这个特性,它可以用来在存在数据倾斜时对执行计划来纠偏。
但是Peeking of User-Defined Bind Variables特性也有它的不足之处,所以Oracle同时引入了一个内部参数用于控制这一特性,请参考下面的示例:
SQL>SELECT x.ksppinm NAME, y.ksppstvl VALUE, x.ksppdesc describ
2 FROM SYS.x$ksppi x, SYS.x$ksppcv y
3 WHERE x.inst_id = USERENV ('Instance')
4 AND y.inst_id = USERENV ('Instance')
5 AND x.indx = y.indx
6 AND x.ksppinm LIKE '%&par%'
7 /
Enter value for par: peek
old 6: AND x.ksppinm LIKE '%&par%'
new 6: AND x.ksppinm LIKE '%peek%'
NAME VALUE DESCRIB
_optim_peek_user_binds TRUE enable peeking of user binds
注释:此参数缺省值为True,设置为False时将禁用peeking of user binds
阅读(338) | 评论(0) | 转发(0) |