select l.session_id sid,
s.serial#,
l.locked_mode,
l.oracle_username,
s.user#,
l.os_user_name,
s.machine,
s.terminal,
a.sql_text,
a.action,
‘ALTER SYSTEM KILL SESSION ”’ || s.sid || ‘, ’ || s.serial# || ”’;’ Command
from v
where l.session_id = s.sid
and s.prev_sql_addr = a.address
order by sid, s.serial#;
alter system kill session ‘sid,serial#’;
報
ORA-00031: session marked for kill 處理Oracle中殺不掉的鎖
2.報如上錯誤 :select a.spid,b.sid,b.serial#,b.username from v
3.如果利用上面的命令殺死一個進程後,進程狀態被置爲”killed”,但是鎖定的資源很長時間沒有被釋放,那麼可以在os一級再殺死相應的進程(線程),首先執行下面的語句獲得進程(線程)號:
select spid, osuser, s.program from v
4. 例:c:>orakill orcl 327
說明:這裏要注意的是kill OS進程是在服務端操作,而不是你程序所在客戶機。 orcl 是實例名稱 ,327 爲spid 線程號