檢視鎖的資訊和alter system kill session的用法(小例子)
當我發現了我做一個DML操作的時候被鎖住了,我解決的辦法:
步驟一、
SQL> col sess format a15
SQL> set linesize 200
SQL> select inst_id, decode(request,0,'Holder: ', ' Waiter: ')||sid sess, id1, id2, lmode,
request, type ,block
from gv$lock
where (id1, id2, type) in (select id1, id2, type from gv$lock where request>0)
order by id1, request;
INST_ID SESS ID1 ID2 LMODE REQUEST TY BLOCK
---------- --------------- ---------- ---------- ---------- ---------- -- ----------
1 Holder: 127 655395 245 6 0 TX 1
1 Waiter: 152 655395 245 0 6 TX 0
注意:
可以看出,我的會話id是152,我被鎖住了,那麼鎖住我的那個會話是127.
SQL> col sess format a15
SQL> set linesize 200
SQL> select inst_id, decode(request,0,'Holder: ', ' Waiter: ')||sid sess, id1, id2, lmode,
request, type ,block
from gv$lock
where (id1, id2, type) in (select id1, id2, type from gv$lock where request>0)
order by id1, request;
INST_ID SESS ID1 ID2 LMODE REQUEST TY BLOCK
---------- --------------- ---------- ---------- ---------- ---------- -- ----------
1 Holder: 127 655395 245 6 0 TX 1
1 Waiter: 152 655395 245 0 6 TX 0
注意:
可以看出,我的會話id是152,我被鎖住了,那麼鎖住我的那個會話是127.
步驟二、
如果你知道127這個會話是誰,那麼你可以先通知他讓他提交自己的事務。
如果你知道127這個會話是誰,那麼你可以先通知他讓他提交自己的事務。
步驟三、
如果你不知道127這個會話是誰,那麼你可以聯絡管理員,讓管理員處理。
如果你不知道127這個會話是誰,那麼你可以聯絡管理員,讓管理員處理。
步驟四、
如果你是管理員,而你自己又聯絡不到127這個會話,那麼你可以殺掉他的程式:
首先查詢他的會話資訊:
SQL> select sid,serial# from v$session where sid=127;
SID SERIAL#
---------- ----------
127 4407
然後殺掉他的程式:
SQL> alter system kill session '127,4407';
如果你是管理員,而你自己又聯絡不到127這個會話,那麼你可以殺掉他的程式:
首先查詢他的會話資訊:
SQL> select sid,serial# from v$session where sid=127;
SID SERIAL#
---------- ----------
127 4407
然後殺掉他的程式:
SQL> alter system kill session '127,4407';
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29107230/viewspace-769244/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- alter system kill sessionSession
- alter system kill session 不成功Session
- Alter system kill session and ORA-00031: session marked for killSession
- alter database和alter system和alter session的區別DatabaseSession
- ALTER SYSTEM KILL SESSION這麼沒力?(轉)Session
- alter system disconnect/kill session 'sid,serial#';Session
- ora-00054 , alter system kill session 'id,serial#'Session
- "alter system kill session" can crash the instance if IO slaves usedSession
- 檢視鎖定的session資訊指令碼Session指令碼
- alter session|system set eventsSession
- oracle死鎖的檢視及kill方法Oracle
- ALTER SYSTEM DISCONNECT SESSION ClauseSession
- 要 kill session 例子,session多,報錯如下Session
- 表鎖定,kill sessionSession
- V$SESSION_LONGOPS 檢視的用法SessionGo
- V$session 檢視的小運用Session
- alter system switch logfile和alter system archive log current的區別Hive
- alter system switch logfile 和 alter system archive log current 的區別Hive
- disconnect session和kill session的區別Session
- 微信小程式 -- 檢視層的用法微信小程式
- 檢視長時間鎖定物件的程式,並kill掉物件
- mysql鎖以及鎖資訊檢視MySql
- [轉]alter system switch logfile和alter system archive log current的區別Hive
- alter system events與alter system event的區別
- alter system archive log current和alter system switch logfileHive
- disconnect session和kill session的區別 轉Session
- 檢視過去的session鎖情況指令碼Session指令碼
- windows下處理kill session不被釋放的鎖WindowsSession
- 忍不住問下alter system 和alter database的區別Database
- V$session 及該檢視的小運用Session
- PHP中ZendCache用法的小例子PHP
- V$ACTIVE_SESSION_HISTORY 檢視中包含的資訊Session
- 教程-檢視的概念和基本用法
- 檢視oracle鎖相關資訊Oracle
- kill session的學問Session
- kill session的測試Session
- alter system set event和set events的區別
- Alter system suspend/resume 導致的bug和特性