暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

oracle11g,通过DBMS_SYSTEM.SET_EV系统包找不到跟踪文件

原创 问题归档 2019-04-14
499

问题描述

学习盖老师的博客上的10046事件,链接http://www.eygle.com/case/Use.sql_trace.to.Diagnose.database.htm

出现如下错误,请帮忙看看。


SQL> select sid,serial#,username from v$session where username is not null;

       SID    SERIAL# USERNAME

---------- ---------- ------------------------------

        33        833 SYS

        36        789 SYS

        37       1583 SYS

        38        425 SCOTT

SQL> exec dbms_system.set_ev(38,425,10046,8,'scott');

PL/SQL procedure successfully completed.

SQL> conn / ^H^H

SP2-0306: Invalid option.

Usage: CONN[ECT] [{logon|/|proxy} [AS {SYSDBA|SYSOPER|SYSASM}] [edition=value]]

where <logon> ::= <username>[/<password>][@<connect_identifier>]

      <proxy> ::= <proxyuser>[<username>][/<password>][@<connect_identifier>]

SQL> conn scott/tiger;

Connected.

SQL> select count(1)  from dba_users;

  COUNT(1)

----------

        10

SQL> conn / as sysdba;

Connected.

SQL> exec dbms_system.set_ev(38,425,10046,0,'scott');

PL/SQL procedure successfully completed.

SQL> select d.value||'/'||lower(rtrim(i.instance, chr(0)))||'_ora_'||p.spid||'.trc' trace_file_name from

  2  ( select p.spid

  3  from sys.v$mystat m,sys.v$session s,sys.v$process p

  4  where m.statistic# = 1 and s.sid = m.sid and p.addr = s.paddr) p,

  5  ( select t.instance from sys.v$thread t,sys.v$parameter v

  6  where v.name = 'thread' and (v.value = 0 or t.thread# = to_number(v.value))) i,

  7  ( select value from sys.v$parameter where name = 'user_dump_dest') d;

TRACE_FILE_NAME

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

/u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_70851.trc

SQL> exit

Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

[oracle@mysql ~]$ more /u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_70851.trc

/u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_70851.trc: No such file or directory

[oracle@mysql ~]$ 


专家解答

测试存在很大问题,首先你开启了38号会话的trace,但是如果我没有猜错,你所有的测试都是用一个终端执行的,所以当你用SYSDBA登陆设置会话时,之前你的38号会话已经结束了。后面你再登陆SCOTT,对应的会话是什么,你并没有查询,不过就算查询了也没有意义,因为你设置开启的不是你后面登陆的会话。

你最后查出来的trace名称对应的是当前SYS用户的trace,但是你并没有开启当前会话的trace,所以没有跟踪文件时正常的。

感觉你并没有理解TRACE的含义,再去把那段文章仔细读一遍吧。

最后修改时间:2019-04-14 14:38:34
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论