_Type;
Dbms_Lock.Sleep(1000);
Close C;
11 End;
12 /
********************************************************************************
SQL ID: 9guk3zj6busz4 Plan Hash: 2086140937
SELECT OBJECT_ID,OBJECT_NAME,OBJECT_TYPE
FROM
TAB1 WHERE OBJECT_ID = 1000
call count cpu elapsed disk query current rows
------- ------ -------- ---------- ---------- ---------- ---------- ----------
Parse 1 0.00 0.00 0 2 0 0
Execute 1 0.00 0.00 0 0 0 0
Fetch 1 0.00 0.00 0 2 0 0
------- ------ -------- ---------- ---------- ---------- ---------- ----------
total 3 0.00 0.00 0 4 0 0
Misses in library cache during parse: 1
Optimizer mode: ALL_ROWS
Parsing user id: 83 (recursive depth: 1)
Number of plan statistics captured: 1
Rows (1st) Rows (avg) Rows (max) Row Source Operation
---------- ---------- ---------- ---------------------------------------------------
0 0 0 TABLE ACCESS BY INDEX ROWID TAB1 (cr=2 pr=0 pw=0 time=19 us cost=1 size=41 card=1)
0 0 0 INDEX RANGE SCAN IND1 (cr=2 pr=0 pw=0 time=16 us cost=1 size=0 card=1)(object id 101626)
********************************************************************************
如果在跟踪文件中,不存在执行计划的相关信息,是否有其他的方法来生成执行计划那?当然有,利用explain参数选项就可以达到这个目的,测试tkprof会议explain指定的用户登录数据库,执行explain plan相关的语句来生成执行计划,并写入到跟踪文件:
SQL>
Declare
Cursor C Is Select Object_Id,Object_Name,Object_Type From Tab1 Where Object_Id = 2000;
Object_Id Number;
Object_Name Varchar2(30);
Object_Type Varchar2(19);
Begin
Open C;
Fetch C Into Object_Id,Object_Name,Object_Type;
Dbms_Lock.Sleep(1000);
Close C;
11 End;
12 /
********************************************************************************
SQL ID: 9k9wj84nxpm6t Plan Hash: 2086140937
SELECT OBJECT_ID,OBJECT_NAME,OBJECT_TYPE
FROM
TAB1 WHERE OBJECT_ID = 2000
call count cpu elapsed disk query current rows
------- ------ -------- ---------- ---------- ---------- ---------- ----------
Parse 1 0.00 0.00 0 2 0 0
Execute 1 0.00 0.00 0 0 0 0
Fetch 1 0.00 0.00 0 3 0 1
------- ------ -------- ---------- ---------- ---------- ---------- ----------
total 3 0.00 0.00 0 5 0 1
Misses in library cache during parse: 1
Optimizer mode: ALL_ROWS
Parsing user id: 83 (SCOTT) (recursive depth: 1)
Rows Execution Plan
------- ---------------------------------------------------
0 SELECT STATEMENT MODE: ALL_ROWS
0 TABLE ACCESS (BY INDEX ROWID) OF 'TAB1' (TABLE)
0 INDEX MODE: ANALYZED (RANGE SCAN) OF 'IND1' (INDEX)
********************************************************************************
tkprof会累计相同的sql语句信息,并在文件的最后累计所有语句的相关信息:
SQL> Select Object_Id,Object_Name,Object_Type From Tab1 Where Object_Id = 2000;
OBJECT_ID OBJECT_NAME OBJECT_TYPE
---------- ------------------------------ -------------------
2000 V_$SQLSTATS_PLAN_HASH VIEW
SQL> Select Object_Id,Object_Name,Object_Type From Tab1 Where Object_Id = 2000;
OBJECT_ID OBJECT_NAME OBJECT_TYPE
---------- ------------------------------ -------------------
2000 V_$SQLSTATS_PLAN_HASH VIEW
跟踪文件内容:
PARSING IN CURSOR #47244034021040 len=73 dep=0 uid=83 oct=3 lid=83 tim=1388022158115297 hv=2221247730 ad='c9810e20' sqlid='88tvucq26b37k'
Select Object_Id,Object_Name,Object_Type From Tab1 Where Object_Id = 2000
END OF STMT
PARSE #47244034021040:c=3999,e=4256,p=0,