以下的文章主要介紹的是Oracle死鎖進程關閉的的具體操作步驟,我們首先是從查哪個實際過程被鎖開始的,以下就是文章的具體內容的描述,下面就是文章的具體內容的介紹,望你在瀏覽之後會有所收穫。
1.查哪個過程被鎖
查V$DB_OBJECT_CACHE視圖:
- select * FROM V$DB_OBJECT_CACHE WHERE OWNER='過程的所屬用戶' and CLOCKS!='0';
- 2. 查是哪一個SID,通過SID可知道是哪個SESSION
- 查V$ACCESS視圖:
- select * FROM V$ACCESS WHERE OWNER='過程的所屬用戶' and NAME='剛纔查到的過程名';
- 3. 查出SID和SERIAL
- 查V$SESSION視圖:
- select SID,SERIAL#,PADDR FROM V$SESSION WHERE SID='剛纔查到的SID'
- 查V$PROCESS視圖:
- select SPID FROM V$PROCESS WHERE ADDR='剛纔查到的PADDR';
4. 殺進程
(1).先殺Oracle死鎖進程:
ALTER SYSTEM KILL SESSION '查出的SID,查出的SERIAL#';
IXDBA.NET社區論壇
(2).再殺操作系統進程:
KILL -9 剛纔查出的SPID
或者用ORAKILL(剛纔查出的SID和SPID)。