檢視引起阻塞的Session
使用者A執行刪除,但是沒有提交。
SQL> delete from test where object_id<10;
已刪除8行。
使用者B執行刪除或者更新id<10的記錄,則被阻塞。
SQL> update test set flag='N' where object_id<10;
遇到這種阻塞,首先需要確定問題。可以使用以下指令碼。
結果如下:
USERNAME SID SERIAL# LOGON_TIME
------------------------------ ---------- ---------- --------------
LIHUILIN 14 87 09-11月-13
LIHUILIN 139 655 09-11月-13
或者使用
結果如下:
BLOCKER SID 'ISBLOCKING' BLOCKEE SID
------------------------------ ---------- ------------- ------------------------------ ----------
LIHUILIN 14 is blocking LIHUILIN 139
Kill引起阻塞的Session
結果如下:
CMD
-----------------------------------------
alter system kill session '14,87';
最後執行alter system命令,阻塞解除。
SQL> delete from test where object_id<10;
已刪除8行。
使用者B執行刪除或者更新id<10的記錄,則被阻塞。
SQL> update test set flag='N' where object_id<10;
遇到這種阻塞,首先需要確定問題。可以使用以下指令碼。
-
select t2.username,t2.sid,t2.serial#,t2.logon_time
-
from v$locked_object t1,v$session t2
- where t1.session_id=t2.sid order by t2.logon_time;
USERNAME SID SERIAL# LOGON_TIME
------------------------------ ---------- ---------- --------------
LIHUILIN 14 87 09-11月-13
LIHUILIN 139 655 09-11月-13
或者使用
-
select
-
(select username from v$session where sid=a.sid) blocker,
-
a.sid,' is blocking ',
-
(select username from v$session where sid=b.sid) blockee,
-
b.sid
-
from v$lock a,v$lock b
- where a.block=1 and b.request>0 and a.id1=b.id1 and a.id2=b.id2;
BLOCKER SID 'ISBLOCKING' BLOCKEE SID
------------------------------ ---------- ------------- ------------------------------ ----------
LIHUILIN 14 is blocking LIHUILIN 139
Kill引起阻塞的Session
- select 'alter system kill session '''||sid||','||serial#||''';' cmd from v$session where username='LIHUILIN' and sid=14;
CMD
-----------------------------------------
alter system kill session '14,87';
最後執行alter system命令,阻塞解除。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29254281/viewspace-776209/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 檢視瀏覽器請求的session 瀏覽器怎麼檢視session瀏覽器Session
- 瀏覽器檢視Session瀏覽器Session
- V$ACTIVE_SESSION_HISTORY檢視的使用Session
- session檢視中wait_timeSessionAI
- [20211019]V$DETACHED_SESSION檢視.txtSession
- [20211214]檢視檢視V$ACTIVE_SESSION_HISTORY遇到奇怪問題.txtSession
- Oracle檢視已被使用的open_cursors&session_cached_cursorsOracleSession
- MySQL表結構變更引起的Metadata Lock|如何定位DDL被阻塞MySql
- [20221130]測試訪問檢視v$session幾種情況的效能差異.txtSession
- 11 UML中的邏輯檢視、程序檢視、實現檢視、部署檢視
- es6中async/await會引起阻塞因而影響併發嗎?AI
- 檢視oracle資料庫session事務設定的是哪個隔離級別Oracle資料庫Session
- ASP.NET Core 5.0 MVC中的檢視分類——佈局檢視、啟動檢視、具體檢視、分部檢視ASP.NETMVC
- Oracle不同版本檢視資料庫session/system級別設定了哪些eventsOracle資料庫Session
- Oracle普通檢視和物化檢視的區別Oracle
- [Django REST framework - 檢視元件之檢視基類、檢視擴充套件類、檢視子類、檢視集]DjangoRESTFramework元件套件
- django 的類檢視和函式檢視-雜談Django函式
- odoo檢視入門學習- tree檢視的使用Odoo
- Hyperf 釋出 Session、極簡 DB、Zookeeper 配置中心元件和支援 Twig / Plates 檢視引擎支援Session元件
- Hyperf 釋出 Session、極簡 DB、zk 配置中心元件和支援 Twig/Plates 檢視引擎支援Session元件
- 解決Tengine健康檢查引起的TIME_WAIT堆積問題AI
- 管理mysql的檢視MySql
- django的檢視層Django
- [20240911]檢視超長檢視的定義2.txt
- 檢視oracle臨時表空間佔用率的檢視Oracle
- 同步、非同步、阻塞、非阻塞的區別非同步
- drf : 通用檢視類和(GenericAPIView)5個檢視擴充套件類,九個檢視子類,檢視集。APIView套件
- 檢視cpu的個數
- 11、Oracle中的檢視Oracle
- Django的檢視和模板Django
- 檢視錶的定義
- 快速檢視dll的publickeytoken
- 帶引數的檢視
- dwg檢視器使用技巧(方便好用的dwg檢視器推薦 )
- win10如何檢視版本_win10檢視版本的方法Win10
- 阻塞佇列一——java中的阻塞佇列佇列Java
- IO - 同步 非同步 阻塞 非阻塞的區別非同步
- 09檢視
- 檢視層