如何获得跟踪文件名称

原文链接:

http://www.eygle.com/faq/How.To.Get.Tracefile.Name.htm

当我们使用sql_trace/10046等事件进行进程跟踪时,会生成跟踪文件.跟踪文件名称由以下几部分组成:

 1<sid>_ora_<pid>.trc 
 2
 3以下脚本用户获得跟踪文件名称: 
 4
 5For Unix: 
 6
 7&gt; 
 8&gt;     $ sqlplus "/ as sysdba"
 9&gt;     
10&gt;     SQL*Plus: Release 9.2.0.4.0 - Production on Fri Oct 8 12:08:09 2004
11&gt;     
12&gt;     Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.
13&gt;     
14&gt;     
15&gt;     Connected to:
16&gt;     Oracle9i Enterprise Edition Release 9.2.0.4.0 - 64bit Production
17&gt;     With the Partitioning, OLAP and Oracle Data Mining options
18&gt;     JServer Release 9.2.0.4.0 - Production
19&gt;     
20&gt;     SQL&gt; set echo on
21&gt;     SQL&gt; @gettrcnameunix
22&gt;     SQL&gt; SELECT       d.VALUE
23&gt;       2         || '/'
24&gt;       3         || LOWER (RTRIM (i.INSTANCE, CHR (0)))
25&gt;       4         || '_ora_'
26&gt;       5         || p.spid
27&gt;       6         || '.trc' trace_file_name
28&gt;       7    FROM (SELECT p.spid
29&gt;       8            FROM v$mystat m, v$session s, v$process p
30&gt;       9           WHERE m.statistic# = 1 AND s.SID = m.SID AND p.addr = s.paddr) p,
31&gt;      10         (SELECT t.INSTANCE
32&gt;      11            FROM v$thread t, v$parameter v
33&gt;      12           WHERE v.NAME = 'thread'
34&gt;      13             AND (v.VALUE = 0 OR t.thread# = TO_NUMBER (v.VALUE))) i,
35&gt;      14         (SELECT VALUE
36&gt;      15            FROM v$parameter
37&gt;      16           WHERE NAME = 'user_dump_dest') d
38&gt;      17  /
39&gt;     
40&gt;     TRACE_FILE_NAME
41&gt;     --------------------------------------------------------------------------------
42&gt;     /opt/oracle/admin/hsbill/udump/hsbill_ora_29630.trc					  
43&gt;                             
44  
45---  
46  
47For Nt: 
48
49&gt; 
50&gt;      
51&gt;     SQL&gt; SELECT    d.VALUE
52&gt;       2         || '\'
53&gt;       3         || LOWER (RTRIM (i.INSTANCE, CHR (0)))
54&gt;       4         || '_ora_'
55&gt;       5         || p.spid
56&gt;       6         || '.trc' trace_file_name
57&gt;       7    FROM (SELECT p.spid
58&gt;       8            FROM v$mystat m, v$session s, v$process p
59&gt;       9           WHERE m.statistic# = 1 AND s.SID = m.SID AND p.addr = s.paddr) p,
60&gt;      10         (SELECT t.INSTANCE
61&gt;      11            FROM v$thread t, v$parameter v
62&gt;      12           WHERE v.NAME = 'thread'
63&gt;      13             AND (v.VALUE = 0 OR t.thread# = TO_NUMBER (v.VALUE))) i,
64&gt;      14         (SELECT VALUE
65&gt;      15            FROM v$parameter
66&gt;      16           WHERE NAME = 'user_dump_dest') d
67&gt;      17  /
68&gt;     
69&gt;     TRACE_FILE_NAME
70&gt;     --------------------------------------------------------------------------------
71&gt;     e:\oracle\admin\eygle\udump\eygle_ora_3084.trc
72&gt;     					    
73  
74---  
75  
76你可以在这里下载以上脚本:  ForUnix  ForNt 
77
78本文作者:   
79eygle,Oracle技术关注者,来自中国最大的Oracle技术论坛  itpub  .   
80www.eygle.com  是作者的个人站点.你可通过  [email protected]  来联系作者.欢迎技术探讨交流以及链接交换. 
81
82* * *
83
84原文出处: 
85
86http://www.eygle.com/faq/How.To.Get.Tracefile.Name.htm</pid></sid>
Published At
Categories with 数据库类
Tagged with
comments powered by Disqus