『管理調優』kill session的相關視圖

1 如何查找死鎖?

You may have a locking issue. Run a query against dba_ddl_locks such as:

col username for a12
col object_locked for a40
col MACHINE/PID for a30
col program for a30
set linesize 132
set verify off
accept objowner prompt 'Object Owner: '
accept objname prompt 'Object Name : '

select s.username, s.sid, s.program, d.owner || '.' || d.name object_locked,
decode(s.process, NULL, s.machine, s.machine || ' PID: ' || to_char(s.process)) "MACHINE/PID"
from v$session s, dba_ddl_locks d
where s.sid = d.session_id
and d.type like '%/Procedure/%'
and d.owner = upper('&objowner')
and d.name = upper('&objname')

2  想要判斷出那些process爲已經被kill掉可以通過視圖x$ksupr

SELECT s.username,s.status,
    x.ADDR,x.KSLLAPSC,x.KSLLAPSN,x.KSLLASPO,x.KSLLID1R,x.KSLLRTYP,
   decode(bitand (x.ksuprflg,2),0,null,1)
    FROM x$ksupr x,v$session s
    WHERE s.paddr(+)=x.addr
   and bitand(ksspaflg,1)!=0;

參考網絡文章:

  1).   Oracle HowTo:如何快速殺死佔用過多資源(CPU,內存)的數據庫進程http://www.eygle.com/archives/2005/10/oracle_howto_kill_session.html

  2).  kill session and process

http://asktom.oracle.com/pls/ask/f?p=4950:8:::::F4950_P8_DISPLAYID:4974573906087

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章