Oracle利用external table 查看trace文件

1. 用下面的语句找到trace文件的路径

select * from v$diag_info where name='Default Trace File';

 

2. 创建一个directory用来加载trace文件

create or replace directory tracefile as '/usr/app/oracle/admin/getpstg/diag/rdbms/getpstg/getpstg/trace/';

 

3.创建external table.

create table trace_log (content varchar2(4000))
organization external
(TYPE ORACLE_LOADER
default directory tracefile
access parameters
(
RECORDS DELIMITED BY NEWLINE
FIELDS TERMINATED BY '|' MISSING FIELD VALUES ARE NULL
(content char(4000))
)
location ('trunk_ora_11072.trc'));

 

4. 开启10046 事件跟踪SQL的执行

Alter session set events '10046 trace name context forever,12';

--在此处执行要跟踪的SQL

select * from gpcomp1.gpcust where custno='12345';

Alter session set events '10046 trace name context off';

 

5. 查看trace文件内容

select * from trace_log;

备注:用UTL_FILE包也能访问特定目录下面的文件,详情参看下面的链接。

http://www.cnblogs.com/princessd8251/p/3866290.html

原文地址:https://www.cnblogs.com/princessd8251/p/3779145.html