-t【Oracle-故障管理】-Trace跟踪会话和会话执行慢故障分析

Oracle 用trace来跟踪session 

1.在数据库安装的电脑上,使用SQL plus 用 SYSDBA 身份连接到数据库. 

2.找到要进行跟踪的会话.

select sid,serial#,username from v$session ; 

3.启用相关会话的SQL trace .

exec dbms_system.set_sql_trace_in_session(7,284,true)

4.从指定SESSION 运行一些程序过程

5.停止会话跟踪.

exec dbms_system.set_sql_trace_in_session(7,284,false)

6.使用tkprof 程序对跟踪到的文件进行格式化. 

tkprof aaa.trc aaa.txt

7.查看aaa.txt就可以了.

----如果是跟踪本SESSION,可以用: 

dbms_session.set_sql_trace(true);
dbms_session.set_sql_trace(false);

Unix下查oracle最近执行的sql语句

$cd $ORACLE_HOME/admin/udump 
$ls -alt | more 
$tkprof filename out_filename explain=apps/apps sys=no 

8.知道了怎么去跟踪一个会话,现在我们就可以根据tkprof生的的txt文件进行会话分析,

如图:我们在trace出来的txt文件中发现elapsed为327.44 ,即5分多钟,比较后发现可以是该地方出现问题

select /*+ all_rows */ count(1)
from
 "INST"."OFFER_MEMBER" where "OFFER_ROLE_ID" = :1


call     count       cpu    elapsed       disk      query    current        rows
------- ------  -------- ---------- ---------- ---------- ----------  ----------
Parse        1      0.00       0.00          0          0          0           0
Execute      1      0.00       0.00          0          0          0           0
Fetch        1     38.67     327.44    1381706    1597572          1           1
------- ------  -------- ---------- ---------- ---------- ----------  ----------
total        3     38.67     327.44    1381706    1597572          1           1


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

转载于:http://blog.itpub.net/645199/viewspace-680380/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值