[20190917]oracle跟蹤事件簡單寫法.txt

lfree發表於2019-09-17

[20190917]oracle跟蹤事件簡單寫法.txt

--//以前我要做10046跟蹤,總是記不住命令。總是要把一些常用指令碼寫入一個文字檔案,採用copy and paste的方式操作。
--//文字越來越大,最後發現這樣的方式管理不合理,也容易出錯。我就開始一點點的建立自己的工作中使用的指令碼,其中
--//也包括tanel poder的指令碼(雖然我很少用).

--//10046on
alter session set events '10046 trace name context forever, level &1';

--//10046off.sql
alter session set events '10046 trace name context off';

--//我以前老是記不住trace name context forever這一串命令。
--//昨天看連結,才發現11g開始支援一種簡單的寫法、
--//連結:

In Oracle 11.1 and above a more concise syntax is available:

ALTER SYSTEM SET EVENTS '10235';
ALTER SYSTEM SET EVENTS '10235 level 1';
ALTER SYSTEM SET EVENTS '10235 off';

Events can also be enabled at session level using the ALTER SESSION command:

ALTER SESSION SET EVENTS '<event> trace name context forever, level <level>';

Events are disabled at session level using:

ALTER SESSION SET EVENTS '<event> trace name context off';

In Oracle 11.1 and above a more concise syntax is available:

ALTER SESSION SET EVENTS '10235';
ALTER SESSION SET EVENTS '10235 level 1';
ALTER SESSION SET EVENTS '10235 off';

Events can be enabled in other sessions using ORADEBUG

To enable an event in a process use:

ORADEBUG EVEMT <event> LEVEL <level>

For example

ORADEBUG EVEMT 10053 LEVEL 1

The default level is 1 so the above can be rewritten as:

ORADEBUG EVEMT 10053

To disable trace again:

ORADEBUG EVEMT 10053 OFF

--//這樣寫10046跟蹤時間就相對簡單了。

ALTER session SET EVENTS '10046 level 12';
...
ALTER session SET EVENTS '10046 off';

--//我在windows簡單測試基本沒有問題。當然並不是全部可以替換,比如你跟蹤942 ERRORSTACK,執行如下:

ALTER session SET EVENTS '942 level 12';
select * from notexist;
ALTER session SET EVENTS '942 off';


alter session set events '942 trace name context forever, level 12';
select * from notexist;
alter session set events '942 trace name context off';

--//跟蹤檔案看到的就是這個表,是看不到執行的sql語句,要看語句要配合10046事件。
--//如果要轉儲ERRORSTACK,必須這樣寫:

ALTER session SET EVENTS '942 TRACE NAME ERRORSTACK LEVEL 12';
select * from notexist;
ALTER session SET EVENTS '942 TRACE NAME ERRORSTACK OFF';

--//不過支援這樣簡單寫法,簡單許多也不容易出錯。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2657325/,如需轉載,請註明出處,否則將追究法律責任。

相關文章