Oracle 常用指令 & SQL - oradebug 篇 (oradebug section)

oradebug hanganalyze

-- 執行 oradebug 產出 hanganalyze dump 檔

oradebug setmypid
oradebug unlimit
oradebug -g all hanganalyze 3
# ORA-32730: Command cannot be executed on remote instance
# change to [ oradebug hanganalyze 3 ]
oradebug -g def dump systemstate 10
oradebug tracefile_name

-- 執行 oradebug 產出 hanganalyze dump 檔 (RAC)

oradebug setmypid
oradebug unlimit
oradebug setinst all
oradebug -g all hanganalyze 3
oradebug -g all dump systemstate 11
oradebug tracefile_name

-- 追蹤 Oracle 其他 pid
select b.spid, a.username, a.program , a.osuser ,a.machine, a.sid, a.serial#, a.status from gv$session a, gv$process b  where addr=paddr(+) and sid=&sid;

oradebug setorapid spid
oradebug unlimit
oradebug -g all hanganalyze 3
oradebug tracefile_name

-- 執行 session event 10046

oradebug setmypid
oradebug unlimit
oradebug session_event 10046 trace name context forevert, level 12
oradebug event 10046 trace name context off
oradebug tracefile_name

-- 執行 process event 10046

oradebug setorapid
oradebug unlimit
oradebug event 10046 trace name context forevert, level 12
oradebug event 10046 trace name context off
oradebug tracefile_name

-- 使用prelim登入

oradebug setorapid
oradebug dump hanganalyze 3
oradebug dump systemstate 10
oradebug tracefile_name

參考來源:

SYSTEMSTATE DUMP

張貼留言

0 留言