Tips--用oradebug来重新生成在Unix被手工删除的trace文件(原)

在很多的unix系统中,当我们Oracle的进程还在run的时候,如果手工的删除进程的trace文件时,则后续再跟踪此进程时,则不能产生trace文件。这时候我们可在用 oradebug这个工具来手工的flush后,重新生成。

看下面的例子:
此例是在HP-UX中做的测试过程。

[oracle@szvsx505:/opt/oracle]
[DCMESUX]~$ sqlplus /nolog

SQL*Plus: Release 9.2.0.5.0 - Production on Mon Apr 3 13:41:49 2006

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

SQL> conn / as sysdba
Connected.
SQL> select p.PID, p.SPID, s.SID, s.SERIAL#, s.USERNAME, s.PROGRAM, s.MACHINE
2 from v$process p, v$session s
3 where p.ADDR = s.PADDR
4 ;

PID SPID SID SERIAL# USERNAME PROGRAM MACHINE
------ ------ ---- ---------- ------------ ------------------------------ ------------
2 17354 1 1 oracle@SZVSX505 (PMON) SZVSX505
3 17356 2 1 oracle@SZVSX505 (DBW0) SZVSX505
4 17358 3 1 oracle@SZVSX505 (LGWR) SZVSX505
5 17360 4 1 oracle@SZVSX505 (CKPT) SZVSX505
6 17362 5 1 oracle@SZVSX505 (SMON) SZVSX505
7 17364 6 1 oracle@SZVSX505 (RECO) SZVSX505
8 17366 7 1 oracle@SZVSX505 (CJQ0) SZVSX505
9 17368 8 1 oracle@SZVSX505 (ARC0) SZVSX505
10 17370 9 1 oracle@SZVSX505 (ARC1) SZVSX505
11 28642 15 4205 SYS sqlplus@SZVSX505 (TNS V1-V3) SZVSX505
12 28645 14 607 SYSTEM PLSQLDev.exe APSZVW0349
13 28660 10 282 SYSTEM PLSQLDev.exe APSZVW0349
14 28669 11 2723 SYSTEM sqlplus.exe APSZVW0349

13 rows selected

SQL> show parameter user_dum

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
user_dump_dest string /oradata/DCMESUX/dump/udump
SQL>
SQL> host ll /oradata/DCMESUX/dump/udump
total 128
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_17951.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_18312.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_19218.trc
-rw-rw---- 1 oracle dba 1096 Mar 24 13:05 dcmesux_ora_23949.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_26140.trc
-rw-rw---- 1 oracle dba 702 Mar 24 13:05 dcmesux_ora_2876.trc
-rw-rw---- 1 oracle dba 702 Mar 24 13:05 dcmesux_ora_7562.trc

SQL> exec dbms_system.set_sql_trace_in_session(11,2723,true);

PL/SQL procedure successfully completed.

SQL> host ll /oradata/DCMESUX/dump/udump
total 128
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_17951.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_18312.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_19218.trc
-rw-rw---- 1 oracle dba 1096 Mar 24 13:05 dcmesux_ora_23949.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_26140.trc
-rw-rw---- 1 oracle dba 3885 Apr 3 13:49 dcmesux_ora_28669.trc
-rw-rw---- 1 oracle dba 702 Mar 24 13:05 dcmesux_ora_2876.trc
-rw-rw---- 1 oracle dba 702 Mar 24 13:05 dcmesux_ora_7562.trc

SQL> exec dbms_system.set_sql_trace_in_session(11,2723,false);

PL/SQL procedure successfully completed.

SQL> host mv /oradata/DCMESUX/dump/udump/dcmesux_ora_28669.trc /oradata/DCMESUX/dump/udump/dcmesux_ora_28669.trc.1

SQL> host ll /oradata/DCMESUX/dump/udump
total 128
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_17951.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_18312.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_19218.trc
-rw-rw---- 1 oracle dba 1096 Mar 24 13:05 dcmesux_ora_23949.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_26140.trc
-rw-rw---- 1 oracle dba 3885 Apr 3 13:49 dcmesux_ora_28669.trc.1
-rw-rw---- 1 oracle dba 702 Mar 24 13:05 dcmesux_ora_2876.trc
-rw-rw---- 1 oracle dba 702 Mar 24 13:05 dcmesux_ora_7562.trc

SQL> exec dbms_system.set_sql_trace_in_session(11,2723,true);

PL/SQL procedure successfully completed.

SQL> host ll /oradata/DCMESUX/dump/udump
total 160
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_17951.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_18312.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_19218.trc
-rw-rw---- 1 oracle dba 1096 Mar 24 13:05 dcmesux_ora_23949.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_26140.trc
-rw-rw---- 1 oracle dba 8933 Apr 3 13:53 dcmesux_ora_28669.trc.1
-rw-rw---- 1 oracle dba 702 Mar 24 13:05 dcmesux_ora_2876.trc
-rw-rw---- 1 oracle dba 702 Mar 24 13:05 dcmesux_ora_7562.trc

SQL> exec dbms_system.set_sql_trace_in_session(11,2723,false);

PL/SQL procedure successfully completed.

SQL> host ll /oradata/DCMESUX/dump/udump
total 160
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_17951.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_18312.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_19218.trc
-rw-rw---- 1 oracle dba 1096 Mar 24 13:05 dcmesux_ora_23949.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_26140.trc
-rw-rw---- 1 oracle dba 8933 Apr 3 13:53 dcmesux_ora_28669.trc.1
-rw-rw---- 1 oracle dba 702 Mar 24 13:05 dcmesux_ora_2876.trc
-rw-rw---- 1 oracle dba 702 Mar 24 13:05 dcmesux_ora_7562.trc

SQL> oradebug setorapid 14
Unix process pid: 28669, image: oracle@SZVSX505 (TNS V1-V3)
SQL> oradebug flush
Statement processed.
SQL> oradebug close_trace
Statement processed.
SQL> exec dbms_system.set_sql_trace_in_session(11,2723,true);

PL/SQL procedure successfully completed.

SQL> host ll /oradata/DCMESUX/dump/udump
total 192
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_17951.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_18312.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_19218.trc
-rw-rw---- 1 oracle dba 1096 Mar 24 13:05 dcmesux_ora_23949.trc
-rw-rw---- 1 oracle dba 704 Mar 24 13:05 dcmesux_ora_26140.trc
-rw-rw---- 1 oracle dba 9701 Apr 3 13:58 dcmesux_ora_28669.trc
-rw-rw---- 1 oracle dba 8933 Apr 3 13:53 dcmesux_ora_28669.trc.1
-rw-rw---- 1 oracle dba 702 Mar 24 13:05 dcmesux_ora_2876.trc
-rw-rw---- 1 oracle dba 702 Mar 24 13:05 dcmesux_ora_7562.trc

SQL> exec dbms_system.set_sql_trace_in_session(11,2723,false);

PL/SQL procedure successfully completed.

SQL>

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29987/viewspace-52019/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29987/viewspace-52019/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值