關於oracle 阻塞會話的檢視與解除,這裡只講操作步驟,不講原理。
session 1 更新物件單沒有提交
session 2 更新的時候由於等待session1 鎖更新行的tx 鎖而陷入阻塞
session 3更新的時候由於等待session1 鎖更新行的tx 鎖也陷入阻塞
問題的根源可以通過以下的查詢獲取。
可以看出sid 100和sid 33 都在以mode6(排他模式)請求tx 鎖,而陷入阻塞佇列。
在em中看的更加清楚一些。
檢視阻塞鎖
產看阻塞會話
原因和現象已經很明顯了。
解決方法,命令列方式,只要找到引起阻塞會話的 sid,serial#,問題就此可以解決。
確認鎖住的物件
事實上找到sid 就可以解決問題,
圖形介面的話
kill session 這個按鈕就可以解決,沒圖形的話那只能在命令列下
本文永久更新鏈結位址:
select sid,type,lmode,request,ctime,block from v$lock where type ='tx'
select blocking_session,sid,wait_class,seconds_in_wait from v$session
where blocking_session is not null order by blocking_session desc
select * from v$lock where type ='tx'
select sid,serial# from v$session where machine ='xuchang-pc' and blocking_session is not null
alter system kill session '632,40769'
關鍵點是找到session通過session殺掉session Oracle 連線 會話數的檢視,修改
檢視processes 當前的連線數 select count from v process 資料庫允許的連線數 select value from v parameter where name processes 檢視連線配置資訊 show parameter processes 修改連線數 al...
Oracle 連線 會話數的檢視,修改
檢視processes 當前的連線數 select count from v process 資料庫允許的連線數 select value from v parameter where name processes 檢視連線配置資訊 show parameter processes 修改連線數 al...
Oracle 檢視當前所有會話SQL和等待事件
select t2.sid,t2.serial 庫級唯一定位乙個session t1.spid os pid,作業系統的pid t3.sql id,t2.event,sqlid和等待事件 t2.p1text,t2.p1,等待事件的p1資訊 t2.p2text,t2.p2,等待事件的p2資訊 t2.p...