ORACLE sql trace跟踪

1.查看sql_trace开启状态

SQL> show parameter sql_trace
NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
sql_trace			     boolean	 FALSE

2.开启sql_trace

SQL> alter session set sql_trace=true;
Session altered.

3.执行查询语句测试

SQL> select * from zhangyun.t1 where rownum<10;

OWNER			       OBJECT_NAME											       SUBOBJECT_NAME
------------------------------ -------------------------------------------------------------------------------------------------------------------------------- ------------------------------
 OBJECT_ID DATA_OBJECT_ID OBJECT_TYPE	      CREATED	LAST_DDL_ TIMESTAMP	      STATUS  T G S  NAMESPACE EDITION_NAME
---------- -------------- ------------------- --------- --------- ------------------- ------- - - - ---------- ------------------------------
SYS			       ICOL$
	20		2 TABLE 	      24-AUG-13 24-AUG-13 2013-08-24:11:37:35 VALID   N N N	     1

SYS			       I_USER1
	46	       46 INDEX 	      24-AUG-13 24-AUG-13 2013-08-24:11:37:35 VALID   N N N	     4

SYS			       CON$
	28	       28 TABLE 	      24-AUG-13 24-AUG-13 2013-08-24:11:37:35 VALID   N N N	     1

4.关闭sql_trace

SQL> alter session set sql_trace=false;
Session altered.

5.查看当前进程id

SQL> SELECT P.SPID, S.SERIAL#, P.USERNAME, P.PROGRAM
  FROM V$SESSION S, V$PROCESS P
 WHERE S.PADDR = P.ADDR
   AND S.SID = (SELECT SID FROM V$MYSTAT WHERE ROWNUM = 1);  2    3    4  

SPID			    SERIAL# USERNAME	    PROGRAM
------------------------ ---------- --------------- ------------------------------------------------
4389				  5 oracle	    oracle@host01.example.com (TNS V1-V3)

6.查看trace log目录

SQL> select name,value from v$diag_info;

NAME		     VALUE
-------------------- ------------------------------------------------------------
Diag Enabled	     TRUE
ADR Base	     /u01/app/oracle
ADR Home	     /u01/app/oracle/diag/rdbms/db11g/DB11G
Diag Trace	     /u01/app/oracle/diag/rdbms/db11g/DB11G/trace
Diag Alert	     /u01/app/oracle/diag/rdbms/db11g/DB11G/alert
Diag Incident	     /u01/app/oracle/diag/rdbms/db11g/DB11G/incident
Diag Cdump	     /u01/app/oracle/diag/rdbms/db11g/DB11G/cdump
Health Monitor	     /u01/app/oracle/diag/rdbms/db11g/DB11G/hm
Default Trace File   /u01/app/oracle/diag/rdbms/db11g/DB11G/trace/DB11G_ora_4389.
		     trc

7.进入trace log目录,用tkprof工具转换

[oracle@host01 trace]$ ls -lrt
-rw-r----- 1 oracle oinstall    287 Feb 10 15:17 DB11G_ora_4389.trm
-rw-r----- 1 oracle oinstall  11650 Feb 10 15:17 DB11G_ora_4389.trc

[oracle@host01 trace]$ tkprof DB11G_ora_4389.trc 2023.prf explain=system/oracle
TKPROF: Release 11.2.0.4.0 - Development on Fri Feb 10 15:21:07 2023
Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

8.查看转换后的内容

可以看到刚刚查询测试的语句,走的物理读次数,查询以及行数等

[oracle@host01 trace]$ more 2023.prf 
TKPROF: Release 11.2.0.4.0 - Development on Fri Feb 10 15:21:07 2023
Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
Trace file: DB11G_ora_4389.trc
Sort options: default
********************************************************************************
count    = number of times OCI procedure was executed
cpu      = cpu time in seconds executing 
elapsed  = elapsed time in seconds executing
disk     = number of physical reads of buffers from disk
query    = number of buffers gotten for consistent read
current  = number of buffers gotten in current mode (usually for update)
rows     = number of rows processed by the fetch or execute call
********************************************************************************
SQL ID: 2ktg0hvu8bk7z Plan Hash: 3836375644
select * 
from
 zhangyun.t1 where rownum<10
 
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        2      0.00       0.00         28          5          0           9
------- ------  -------- ---------- ---------- ---------- ----------  ----------
total        4      0.00       0.00         28          7          0           9

Misses in library cache during parse: 1
Optimizer mode: ALL_ROWS
Parsing user id: SYS
Number of plan statistics captured: 1

Rows (1st) Rows (avg) Rows (max)  Row Source Operation
---------- ---------- ----------  ---------------------------------------------------
         9          9          9  COUNT STOPKEY (cr=5 pr=28 pw=0 time=206 us)
         9          9          9   TABLE ACCESS FULL T1 (cr=5 pr=28 pw=0 time=204 us cost=3 size=23042619 card=111317)
********************************************************************************

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值