close

1. 查看哪些Process被鎖住
select t2.username,t2.sid,t2.serial#,t2.logon_time

from v$locked_object t1,v$session t2

where t1.session_id=t2.sid order by t2.logon_time; 

 

2.查看對應執行的是哪一個SQL語句(會提示輸入SID參數,就是上一步查詢出來 SID)
select sql_text from v$session a,v$sqltext_with_newlines b
 where DECODE(a.sql_hash_value, 0, prev_hash_value, sql_hash_value)=b.hash_value
 and a.sid=&sid order by piece;

 3.殺死對應的Process(上述的sidserial#參數傳入)
  alter system kill session 'sid,serial#';

如出現:

Ora-00031session marked for kill之訊息,請再進行以下步驟

4. 取得語句的Process代號
select spid,osuser,s.program from v$session s,v$process p
where s.paddr=p.addr and s.sid=&sid;

5.OS中殺死該Process
 unix
系統,以root身份執行以下命令
 # kill -9 spid(
即第4步查詢出來的Process代號spid)

Reference:http://tc.itkee.com/database/detail-1dda.html

arrow
arrow
    全站熱搜

    masterman 發表在 痞客邦 留言(0) 人氣()