有时我们查询 gv$sql可以看出同一个SQL不同子游标的一些运行细节:
selet t.inst_id,t.sql_id,t.child_number,t.plan_hash_value,t.last_active_time,t.elapsed_time/100000/decode(t.executions,0,1,t.executions),t.elapsed_time/1000000,t.executions,t.sql_text from gv$sql t where sql_id=‘xxx‘
通过以上查询如果涉及同一个SQL运行信息差异很大的情况,基本就要去对应检查下,SQL是不是性能出了问题。
涉及sql中的一些绑定变量可以查询 gv$sql_bind_capture。
而执行计划的固定问题,这也根据特定的业务场景来,例如针对的sql里的对象数据基本无变动,特别是像一些历史分析数据。
执行计划固定的方法:outline、SQL Profile、SPM 这三者的区别这里我不做细述。以下我会针对SPM来做个演示.
待续。。。
https://blog.csdn.net/yangzhawen/article/details/44017271
原文地址:http://blog.51cto.com/2012ivan/2133789
时间: 2024-11-13 08:12:15