Oracle 等待資源時檢測到死鎖如何解決

2021-09-27 02:11:05 字數 959 閱讀 1170

解決方法:

1、檢視那些表被鎖住:

--1、檢視那些表被鎖住---

select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id = a.object_id;

2、檢視引起死鎖的會話:

--2、檢視引起死鎖會話--

select b.username,b.sid,b.serial#,logon_time from v$locked_object a,v$session b where a.session_id = b.sid order by b.logon_time;

3、檢視被阻塞的會話:

--3、檢視被阻塞的會話--

select * from dba_waiters;

4、釋放鎖或者殺掉oracle程序:

--4、釋放鎖或者殺掉oracle程序--

alter system kill sessin 'sid,serial#';

5.如何查詢sid 與 serial

select object_name,machine,s.sid,s.serial#

from v$locked_object l,dba_objects o ,v$session s

where l.object_id = o.object_id and l.session_id=s.sid;

下面的語句用來殺死乙個程序: 

alter system kill session '42,21993'; (其中24,111分別是上面查詢出的sid,serial#)
以上就是我成功殺死死鎖的全部心得。

ORACLE 等待事件

1 gc current block 2 way 乙個例項請求對當前節點 主控節點 中的乙個資料塊進行修改,該資料塊又因為修改已快取在另一節點中。存在 寫 寫 爭用 2 gc current block 3 way 乙個例項請求對當前訪問的乙個資料塊進行修改,主控節點收到請求,將訊息發給當前塊的擁有...

資源洩露檢測

記憶體洩露和資源洩露是c c 程式設計師不得不面對的乙個問題,隨著程式越來越大,稍不留神就可能在程式中留下了記憶體洩露的隱患,這個問題很多人可能覺得沒什麼,就洩 記憶體而已,只要程式邏輯沒問題,但是如果程式執行時間很長或者洩露的記憶體很大的話,會導致系統資源占用過多,嚴重的也可能使得程式崩潰。前段時...

等待資源 死鎖情況彙總

1 死鎖的儲存過程 出現這種情況,可能是編譯的儲存過程過程中發生了死鎖的情況 解決方法,查出死鎖的物件 select b.sid,b.serial b.machine,b.terminal,b.program,b.process,b.status from v lock a v session b ...