本文實(shí)例講述了Oracle刪除死鎖進(jìn)程的方法。分享給大家供大家參考。具體如下:
步驟1:用以下SQL查看進(jìn)程列表,判斷出被鎖定的表
復(fù)制代碼 代碼如下:SELECT dob.OBJECT_NAME Table_Name,lo.SESSION_ID||', '||vss.SERIAL# 刪除號(hào),
lo.locked_mode,lo.SESSION_ID, vss.SERIAL#,vss.action Action,vss.osuser OSUSER, vss.LOGON_TIME,
vss.process AP_PID, VPS.SPID DB_PID ,vss.*
From v$locked_object lo, dba_objects dob, v$session vss, V$PROCESS VPS
Where lo.OBJECT_ID = dob.OBJECT_ID
and lo.SESSION_ID = vss.SID
AND VSS.paddr = VPS.addr
order by 2,3,DOB.object_name
查找被鎖表
步驟2 刪除進(jìn)程,如之前的“刪除號(hào)”查找出的結(jié)果為“286, 2184”,則運(yùn)行以下SQL
復(fù)制代碼 代碼如下:ALTER system kill session '286, 2184'
刪除后不會(huì)馬上生效一般,要過一會(huì)。
希望本文所述對大家的Oracle程序設(shè)計(jì)有所幫助。
更多信息請查看IT技術(shù)專欄