您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

Oracle 从缓存里面查找真实的执行计划

2024/3/19 21:44:32发布40次查看
有关oracle 的执行计划说明,参考:oracle explain plan
有关oracle 的执行计划说明,参考:oracle explain plan 见
一.  查看当前session 的sid
sys@anqing1(rac1)> select userenv('sid') from dual;
userenv('sid')
--------------
137
sys@anqing1(rac1)> select sid from v$mystat where rownum =1;
sid
----------
137
二.  查看缓存中的explain plan
1)根据sid,从v$sql中找到相应sql的hash_value和address
/* formatted on 2011/6/20 17:38:20 (qp5 v5.163.1008.3004) */
select a.sql_text, a.address, a.hash_value
from v$sql a, v$session b
where a.hash_value = b.sql_hash_value and b.sid = &sid;
2)根据hash_value和address的值,从v$sql_plan中找到真实的执行计划
/* formatted on 2011/6/20 17:39:22 (qp5 v5.163.1008.3004) */
set line 200;
col oper format a100;
select lpad (oper, length (oper) + level * 2, ' ') oper, cost
from (select object_name || ':' || operation || ' ' || options as oper,
cost,
id,
parent_id
from v$sql_plan
where hash_value = '&hash_value' and address = '&address')
start with id = 0
connect by prior id = parent_id;
如:

该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product