我們知道從Oracle9i開始,Oracle引入了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.
-The End-