1. 找出sid和serial#
select sid,serial#,osuser from v$session t
where t.USERNAME='USERNAME'
2. 开始sqltrace
execute dbms_system.set_sql_trace_in_session(sid,serial#,ture);
3. 运行程序
4. 停止sqltrace
execute dbms_system.set_sql_trace_in_session(sid,serial#,false);
5. 使用cmd 到udump
例: D:\Oracle\product\10.1.0\admin\test10g\udump
6. 找最新的trace文件
7. 使用tkprof文件解析trace文件
例: tkprof sqltrace文件.trc
8. 打开a.out
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
C:\Documents and Settings\Administrator>sqlplus /nolog
SQL*Plus: Release 10.1.0.2.0 - Production on 星期四 11月 5 12:36:48 2009
Copyright (c) 1982, 2004, Oracle.
SQL> connect sys/test
ERROR:
ORA-28009: connection to sys should be as sysdba or sysoper
SQL> connect sys/test as sysdba;
已连接。
SQL> show sga;
Total System Global Area
Fixed Size
Variable Size
Database Buffers
Redo Buffers
SQL> select sid,serial#,username
---------- ---------- ------------------------------
---------- ---------- ------------------------------
---------- ---------- ------------------------------
---------- ---------- ------------------------------
已选择37行。
SQL> /
---------- ---------- ------------------------------
---------- ---------- ------------------------------
---------- ---------- ------------------------------
---------- ---------- ------------------------------
已选择37行。
SQL> exec dbms_system.set_sql_trace_in_session(126,2065,true)
PL/SQL 过程已成功完成。
SQL> exec dbms_system.set_sql_trace_in_session(126,2065,false)
PL/SQL 过程已成功完成。
SQL>
C:\Documents and Settings\Administrator>d:
D:\>cd D:\oracle\product\10.1.0\admin\myoracle\udump
D:\oracle\product\10.1.0\admin\myoracle\udump>tkprof myoracle_ora_4468.trc a.out
TKPROF: Release 10.1.0.2.0 - Production on 星期四 11月 5 15:41:47 2009
Copyright (c) 1982, 2004, Oracle.
D:\oracle\product\10.1.0\admin\myoracle\udump>