檢查Oracle的鎖狀態並清除問題會話
當多個會話想同時訪問一行資料,就有可能發生鎖的爭用。
查詢會話鎖定狀態:
USERNAME SID RBS SLOT SEQ LMODE REQUEST
---------- ---------- ---------- ---------- ---------- ---------- ----------
SCOTT 146 4 47 21557 0 6
SCOTT 150 4 47 21557 6 0
SCOTT 161 4 47 21557 0 6
LMODE表示當前獲得的鎖,REQUEST表示想要獲得的鎖。
SID BLOCKING_SESSION USERNAME BLOCKING_SESSION_STATUS
---------- ---------------- ---------- -----------------------
146 150 SCOTT VALID
161 150 SCOTT VALID
150 SCOTT NO HOLDER
VALID 被BLOCK
NO HOLDER 沒有被BLOCK
如果要關閉會話:
單引號中分別是,'SID, SERIAL#',這兩個都是V$SESSION中的列。
查詢會話鎖定狀態:
點選(此處)摺疊或開啟
-
select /*+ ordered */ username, v$lock.sid, trunc(id1/power(2,16)) rbs,
-
bitand(id1,to_number('ffff','xxxx'))+0 slot,
-
id2 seq, lmode, request
-
from v$lock, v$session
-
where v$lock.type = 'TX'
- and v$lock.sid = v$session.sid;
USERNAME SID RBS SLOT SEQ LMODE REQUEST
---------- ---------- ---------- ---------- ---------- ---------- ----------
SCOTT 146 4 47 21557 0 6
SCOTT 150 4 47 21557 6 0
SCOTT 161 4 47 21557 0 6
-
0 - none
-
1 - null (NULL)
-
2 - row-S (SS)
-
3 - row-X (SX)
-
4 - share (S)
-
5 - S/Row-X (SSX)
-
6 - exclusive (X)
點選(此處)摺疊或開啟
-
SELECT sid, blocking_session, username, blocking_session_status
-
FROM v$session
-
WHERE username='SCOTT'
- ORDER BY blocking_session;
SID BLOCKING_SESSION USERNAME BLOCKING_SESSION_STATUS
---------- ---------------- ---------- -----------------------
146 150 SCOTT VALID
161 150 SCOTT VALID
150 SCOTT NO HOLDER
NO HOLDER 沒有被BLOCK
如果要關閉會話:
點選(此處)摺疊或開啟
- alter system kill session '11,18';
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22621861/viewspace-1284497/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle中會話的狀態Oracle會話
- 無狀態會話bean的疑問會話Bean
- Oracle SCN健康狀態檢查Oracle
- oracle物理dg狀態檢查Oracle
- oracle鎖會話Oracle會話
- Docker 容器的健康狀態檢查Docker
- 在Oracle中,如何定時清理INACTIVE狀態的會話?Oracle會話
- 查詢並解除oracle的死鎖Oracle
- 檢視Oracle鎖並且釋放鎖Oracle
- chkdsk 命令引數 檢查磁碟並顯示狀態報告
- 無狀態會話ejb object的個人理解會話Object
- 關於有狀態和無狀態會話bean的解釋 (轉)會話Bean
- Oracle阻塞會話查詢Oracle會話
- oracle狀態查詢(補)Oracle
- oracle常用狀態查詢Oracle
- RAC常見命令檢查狀態
- 2.檢查網路狀態
- linux檢查埠狀態命令Linux
- 檢查Capital許可狀態API
- 網路狀態的檢查和MJRefresh
- 如何透過sid查詢造成死鎖的sql語句,並殺死會話SQL會話
- 如何通過sid查詢造成死鎖的sql語句,並殺死會話SQL會話
- 檢視oracle死鎖程式並結束死鎖Oracle
- 查詢並刪除Oracle中等待的鎖Oracle
- oracle 解鎖的問題Oracle
- 會話和鎖資訊查詢檢視 | 全方位認識 sys 系統庫會話
- Oracle 11g RAC 檢查各部分執行狀態Oracle
- 事務已提交另外會話查詢不到的問題解析會話
- [譯]ASP.NET Core 2.0 會話狀態ASP.NET會話
- 自動查詢並分析快遞的物流狀態
- oracle 中查詢被鎖的物件,並殺死死鎖程式的方法Oracle物件
- 【Script】查詢鎖狀態的同時展示出鎖型別資訊型別
- 清除 Nuxt 狀態快取:clearNuxtStateUX快取
- 檢查asm磁碟組狀態的檢視v$asm_diskgroupASM
- 修改完後,不會清除快取的問題?快取
- 前端問題檢查前端
- oracle鎖表問題Oracle
- oracle 鎖問題的解決Oracle