在plsql操作orcale表時候,會偶爾碰到因未提交執行commit 造成事務未提交,而鎖表的情況解決辦法為
前提條件有對應檢視鎖表許可權的使用者,
第一步檢視被鎖表
--#檢視鎖表名稱,使用者等
select b.owner,b.object_name,a.session_id,a.locked_mode
from v$locked_object a,dba_objects b
where b.object_id = a.object_id;
第二步:
殺死未提交記錄
-- 檢視釋放資訊
select b.username,b.sid,b.serial#,logon_time
from v$locked_object a,v$session b
where a.session_id = b.sid order by b.logon_time;
--釋放資訊,備註:下面兩個是上面資訊替代
alter system kill session 'b.sid,b.serial#';
解決plsql因事務未提交造成的鎖表問題
1 執行以下語句可查詢被鎖的表 select b.owner,b.object name,a.session id,a.locked mode from v locked object a,dba objects b where b.object id a.object id 2 執行以下語句可查詢...
plsql因事務未提交造成的鎖表的解決辦法
1 執行以下語句可查詢被鎖的表 select b.owner,b.object name,a.session id,a.locked mode from v locked object a,dba objects b where b.object id a.object id 2 執行以下語句可查詢...
Mysql事務未提交造成表鎖 線上事故
問題描述 etl抽取資料庫基本資料遲遲沒有完成,造成下游依賴,延遲從而引起了業務功能.問題定位 mysql資料庫 從資料庫查詢出有一堆慢查詢 waiting for table flush 狀態的sql基本從上可看出有dml操作或者鎖表了 查詢是否存在事務未提交 select a.trx start...