利用trcsess合并以共享模式连接的session所产生的tracefile!

我们知道mts下存在多个process为一个session服务的情况,这样如果想开启该session的trace功能,那么产生的trace文件势必就有多个文件,如何把这个多个文件中的session信息提取出来就显的尤为重要,oracle提供的trcsess工具可以帮助我们,通过trcsess处理之后的tracefile就可以通过tkprof继续处理了。

[@more@]

SQL> select distinct sid from v$mystat;

SID
----------
138

SQL> select saddr,paddr,server,sid,serial# from v$session where sid=138;

SADDR PADDR SERVER SID SERIAL#
-------- -------- --------- ---------- ----------
697267AC 6964C00C SHARED 138 7
SQL> select pid,spid from v$process where addr='6964C00C';

PID SPID
---------- ------------
14 4032
SQL> select name from v$shared_server where paddr='6964C00C';

NAME
----
S000

SQL>
--====================================
SQL> select distinct sid from v$mystat;

SID
----------
129

SQL> select saddr,paddr,server,sid,serial# from v$session where sid=129;

SADDR PADDR SERVER SID SERIAL#
-------- -------- --------- ---------- ----------
6971BEA4 6964C00C SHARED 129 17

SQL> select name from v$shared_server where paddr='6964C00C';

NAME
----
S000
SQL> declare
2 i number :=0;
3 j number :=0;
4 begin
5 loop
6 j:=i+1;
7 i:=i+1;
8 end loop;
9 end;
10 /

--=========================================
SQL> select distinct sid from v$mystat;

SID
----------
138

SQL> select saddr,paddr,server,sid,serial# from v$session where sid=138;

SADDR PADDR SERVER SID SERIAL#
-------- -------- --------- ---------- ----------
697267AC 6965074C SHARED 138 7
SQL> select name from v$shared_server where paddr='6965074C';

NAME
----
S001

SQL> select pid,spid from v$process where addr='6965074C';

PID SPID
---------- ------------
26 2808

SQL> alter session set sql_trace=true;

会话已更改。

SQL> select count(*) from t;

COUNT(*)
----------
6

SQL> select * from t;

ID
----------
1
1
2
3
4
2

已选择6行。

SQL> alter session set sql_trace=false;

会话已更改。

SQL> show parameter _dump_dest

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
background_dump_dest string E:ORACLEPRODUCT10.2.0ADMIN
TESTBDUMP
core_dump_dest string E:ORACLEPRODUCT10.2.0ADMIN
TESTCDUMP
user_dump_dest string E:ORACLEPRODUCT10.2.0ADMIN
TESTUDUMP
SQL> host
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.

C:>e:

E:>cd E:oracleproduct10.2.0adminTESTbdump

E:oracleproduct10.2.0adminTESTbdump>dir *4032*
驱动器 E 中的卷没有标签。
卷的序列号是 F6E5-4B31

E:oracleproduct10.2.0adminTESTbdump 的目录

2009-06-24 22:44 17,363 test_s000_4032.trc
1 个文件 17,363 字节
0 个目录 2,366,357,504 可用字节

E:oracleproduct10.2.0adminTESTbdump>dir *2808*
驱动器 E 中的卷没有标签。
卷的序列号是 F6E5-4B31

E:oracleproduct10.2.0adminTESTbdump 的目录

2009-06-24 22:44 42,603 test_s001_2808.trc
1 个文件 42,603 字节
0 个目录 2,366,357,504 可用字节

--这里要特别注意的是10g以mts模式连接的session其对应的process产生的tracefile放在了bdump下,而不是udump下。

E:oracleproduct10.2.0adminTESTbdump>trcsess
oracle.ss.tools.trcsess.SessTrcException: SessTrc-00002: 会话跟踪用法错误: 传递
了错误的参数。
trcsess [output=] [session=] [clientid=>] [service=] [action=] [module=] file names>

output= output destination default being standard output.
session= session to be traced.
Session id is a combination of session Index & session serial number e.g. 8.13.

clientid= clientid to be traced.
service= service to be traced.
action= action to be traced.
module= module to be traced.
Space separated list of trace files with wild card '*' suppor
ted.


E:oracleproduct10.2.0adminTESTbdump>trcsess output=out.txt session=138.7 t
est_s000_4032.trc test_s001_2808.trc

E:oracleproduct10.2.0adminTESTbdump>dir out.txt
驱动器 E 中的卷没有标签。
卷的序列号是 F6E5-4B31

E:oracleproduct10.2.0adminTESTbdump 的目录

2009-06-24 22:52 56,948 out.txt
1 个文件 56,948 字节
0 个目录 2,366,300,160 可用字节

E:oracleproduct10.2.0adminTESTbdump>tkprof out.txt out1.txt

TKPROF: Release 10.2.0.1.0 - Production on 星期三 6月 24 22:53:38 2009

Copyright (c) 1982, 2005, Oracle. All rights reserved.

E:oracleproduct10.2.0adminTESTbdump>dir out1.txt
驱动器 E 中的卷没有标签。
卷的序列号是 F6E5-4B31

E:oracleproduct10.2.0adminTESTbdump 的目录

2009-06-24 22:53 29,384 out1.txt
1 个文件 29,384 字节
0 个目录 2,366,259,200 可用字节

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

转载于:http://blog.itpub.net/19602/viewspace-1023465/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值