show parameter timed_statistics;
如果VALUE 是FALSE的话。
alter session set timed_statistics=true;
alter session set sql_trace=true;
执行要执行的sql语句 或过程或函数
完毕后 执行下面的语句
select a.spid from v$process a,v$session b
where a.ADDR = b.PADDR
and b.AUDSID =userenv('sessionid');
where a.ADDR = b.PADDR
and b.AUDSID =userenv('sessionid');
查找sql_trace存储的文件路径:
select value from v$parameter where name = 'user_dump_dest';
到该路径下找到trace文件名称中含有a.spid且时间为今天的
将文件转存其他目录执行以下格式命令:
tkprof v2b_ora_307282.trc report.txt
打开report.txt可以看到sql的执行计划
********************************************************************************
select *
from
test_dzhq
from
test_dzhq
call count cpu elapsed disk query current rows
------- ------ -------- ---------- ---------- ---------- ---------- ----------
Parse 1 0.00 0.00 0 0 0 0
Execute 1 0.00 0.00 0 0 0 0
Fetch 1 0.00 0.00 0 7 0 19
------- ------ -------- ---------- ---------- ---------- ---------- ----------
total 3 0.00 0.00 0 7 0 19
------- ------ -------- ---------- ---------- ---------- ---------- ----------
Parse 1 0.00 0.00 0 0 0 0
Execute 1 0.00 0.00 0 0 0 0
Fetch 1 0.00 0.00 0 7 0 19
------- ------ -------- ---------- ---------- ---------- ---------- ----------
total 3 0.00 0.00 0 7 0 19
Misses in library cache during parse: 1
Optimizer goal: CHOOSE
Parsing user id: 24
Optimizer goal: CHOOSE
Parsing user id: 24
Rows Row Source Operation
------- ---------------------------------------------------
19 TABLE ACCESS FULL TEST_DZHQ
------- ---------------------------------------------------
19 TABLE ACCESS FULL TEST_DZHQ
********************************************************************************
软分析(在共享池中查找)
硬分析 创建一个新的执行计划