eygle Eygle.
FAQ 2012-02-09

使用dbms_monitor过程执行进程跟踪

在Oracle 10g之后,推荐使用DBMS_MONITOR来进行进程跟踪,此前还真是用得很少,我本人习惯使用dbms_system包。

偶尔使用了一次dbms_monitor感觉功能还是要弱一点,但是简单,以下示例是我测试的一个部分,用于跟踪后台的CKPT进程。
SQL> alter session set events '10046 trace name context forever,level 12';

Session altered.

SQL> alter tablespace users offline;

Tablespace altered.

SQL>  alter session set events '10046 trace name context off';

Session altered.


SQL> select sid,serial#,program from v$session where program like '%CKPT%';

       SID    SERIAL# PROGRAM
---------- ---------- ------------------------------------------------
         6          1 oracle@hpserver2.enmotech.com (CKPT)
        

SQL> exec dbms_monitor.session_trace_enable(6,1,TRUE,TRUE);

PL/SQL procedure successfully completed.

SQL> alter tablespace users offline;

Tablespace altered.

SQL> alter tablespace users online;

Tablespace altered.

SQL> exec dbms_monitor.session_trace_disable(6,1);

PL/SQL procedure successfully completed.

记录供参考。

By eygle 2012-02-09 14:04 评论 (3)
eygle
eygle

前Oracle ACE Director,云和恩墨创始人。技术为骨,历史为脉,人文为魂。

返回首页

3 Comments

学习和应用你觉得恐惧(FUD或者抵触,疑惑)的东西,你就会变得异常强大, 起码从内心和眼界来讲. 好比鄙人最近痴迷的研究Cassandra(BigTable/HBase)和Redis,觉得自身充满了能量,功力暴增,举着个大锤子(Big hammer)四处猛击.

-木匠.

其实我只是想说, 你终于愿意尝试DBMS_MONITOR了. 前面是在下的微薄上面的一堆废话,贴在这里比较合适而已. 偶也.

-木匠

p.s. 来来回回,换着ID登录,发评论.