这个参数对系统性能和稳定性都非常重要,可惜经常被忽略,
这。个对于OLTP系统来说是铁律,不容置疑,力量,令人感叹啊。
<强> 强>
:因为不能窥视绑定变量,只能按照字段是数据分布均匀的情况来计算,在能否使用索引,返回行源的估值上,都会出现较大的偏差,有时可能会配合使用提示来提高SQL性能。
:比如硬解析窥视到一个绑定变量适合全表扫描的执行计划,不管接下来的绑定变量是否能使用索引,都会一直全表扫描下去,直到下次硬解析时再次窥视绑定变量才可能重新生成新的执行计划。
的做出调整:比如第一次窥视到的绑定变量适合全表扫描,那么第二次即使使用的绑定变量适合走索引,也还是会使用全表扫描的执行计划,下一次再次执行就会纠正为使用索引的执行计划(具体请参考ACS的实现原理)。
数据分布不均字段的数据分布情况,一般使用默认选项(汽车),某些特殊情况可以补充或去掉某些字段的直方图信息。一些客户在数据库级关闭收集直方图的做法是不建议的。
<强> 强>
使用绑定变量(合理就是:类似ID, account_no等唯一值等于或接近表行数的字段,必须使用绑定变量;而类型、状态等唯一值少且数分别不均的字段,不使用绑定变量)。
<强> 强>
。
1.绑定变量使用变量窥视;
2.绑定变量的列上使用直方图;
我们先来看看跟ACS相关的三个隐藏参数,是用来控制是否启用ACS
ksppinm上校的故事本来
坳ksppstvl为表达a20
对a35坳ksppdesc
选择,ksppinm、ksppstvl ksppdesc
从,x ksppi x美元,美元ksppcv y
在那里,x。indx=y。与indx ksppinm=癬optimizer_adaptive_cursor_sharing”;
KSPPINM,,,,,,,,,,,KSPPSTVL大敌;,,,,,KSPPDESC
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
_optimizer_adaptive_cursor_sha真实,,,,,,,,优化器自适应光标分享
环
选择,ksppinm、ksppstvl ksppdesc
从,x ksppi x美元,美元ksppcv y
在那里,x。indx=y。与indx ksppinm=癬optimizer_extended_cursor_sharing”;
KSPPINM,,,,,,,,,,,KSPPSTVL大敌;,,,,,KSPPDESC
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
_optimizer_extended_cursor_sha UDO,,,,,,,,,优化器扩展光标分享
环
选择,ksppinm、ksppstvl ksppdesc
从,x ksppi x美元,美元ksppcv y
在那里,x。indx=y。与indx ksppinm=癬optimizer_extended_cursor_sharing_rel”;
KSPPINM,,,,,,,,,,,KSPPSTVL大敌;,,,,,KSPPDESC
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
_optimizer_extended_cursor_sha简单,,,,,,,优化器扩展光标分享f