ORACLE多个event设置方式

设置多个 event 方式:

方法一:

ALTER SYSTEM SET EVENT='10089 trace name context forever, level 1','10235 trace name context forever, level 65536','28401 TRACE NAME CONTEXT FOREVER, LEVEL 1','10129 trace name context forever, level 1','10169 trace name context forever, level 1' scope=spfile;

 

方法二:

ALTER SYSTEM SET event='10089 trace name context forever, level 1:10235 trace name context forever, level 65536:28401 TRACE NAME CONTEXT FOREVER, LEVEL 1:10129 trace name context forever, level 1:10169 trace name context forever, level 1

' SCOPE=SPFILE;

 

 

方法一:

set serveroutput on size 1000000

 

declare

event_level number;

begin

for i in 1..100000 loop

sys.dbms_system.read_ev(i,event_level);

if (event_level > 0) then

dbms_output.put_line('Event '||to_char(i)||' set at level '||

to_char(event_level));

end if;

end loop;

end;

/

 

Event 28401 set at level 1

Event 31156 set at level 1024

 

PL/SQL procedure successfully completed.

 

 

 

  验证设置的 event 是否生效:

方法二:

How To List All The Named Events Set For A Database (Doc ID 436036.1)

 

1. identify the session

 

   SQL> select p.pid, p.spid, s.username

        from v$process p, v$session s

        where p.addr = s.paddr;

 

 

2. Attach to the desired session

 

   SQL> connect / as sysdba

   SQL> oradebug setorapid

   - OR -

   SQL> oradebug setospid

   ...

 

SQL> oradebug setospid 7346

Oracle pid: 19, Unix process pid: 7346, image: oracle@yikuer (TNS V1-V3)

 

SQL> oradebug eventdump session

10169 trace name context forever, level 1

10129 trace name context forever, level 1

28401 TRACE NAME CONTEXT FOREVER, LEVEL 1

10235 trace name context forever, level 65536

10089 trace name context forever, level 1


请使用浏览器的分享功能分享到微信等