Oracle 檢視 物件 持有 鎖 的情況

2022-09-08 11:00:14 字數 635 閱讀 7447

同事在測試庫上對乙個表加字段,提示 ora-00054, 資源忙。 應該是表物件的鎖沒有釋放。

有關oracle 鎖的說明,參考:

oracle鎖機制

該sql 顯示所有物件上的鎖,如果要查某個具體的物件,可以根據object_name 字段進行一下過濾,找到對應的sid 之後去查v$session 檢視。

該檢視會顯示session 對應的資訊,包括終端的資訊,如果找到了終端,可以讓它提交或者回滾一下就ok了。 我這裡是測試環境,直接把session kill 掉了。然後修改表就ok了。

後來測試了發現,上面的指令碼有時候會查不到物件的的相關記錄,故增加了v$access檢視,通過對這個檢視進行物件的判斷,修改之後的指令碼如下:

再次修改了一下,新增了v$sql檢視,這樣可以一起查出具體導致這種鎖的sql語句,一次性就搞定了,sql如下:

效果如下:

dba1 群:62697716(滿);   dba2 群:62697977(滿)   dba3 群:62697850(滿)   

dba 超級群:63306533(滿);  dba4 群:83829929   dba5群: 142216823 

dba6 群:158654907    dba7 群:172855474   dba總群:104207940

Oracle 檢視 物件 持有鎖的情況

同事在測試庫上對乙個表加字段,提示 ora 00054,資源忙。應該是表物件的鎖沒有釋放。用如下sql 檢視一下系統中相關物件上鎖的情況 view plain select s.sidsession id,s.username,decode lmode,0,none 1,null 2,row s s...

Oracle 檢視 物件 持有鎖的情況

同事在測試庫上對乙個表加字段,提示 ora 00054,資源忙。應該是表物件的鎖沒有釋放。用如下sql 檢視一下系統中相關物件上鎖的情況 view plain formatted on2011 9 26 14 45 46 qp5 v5.163.1008.3004 select s.sidsessio...

Oracle 檢視 物件 持有鎖的情況

同事在測試庫上對乙個表加字段,提示 ora 00054,資源忙。應該是表物件的鎖沒有釋放。用如下sql 檢視一下系統中相關物件上鎖的情況 view plain formatted on2011 9 2614 45 46 qp5v5.163.1008.3004 select s.sidsession ...