oracle資料庫鎖表的處理

2021-08-28 12:06:55 字數 1158 閱讀 7256

--以下幾個為相關表

select * from v$lock;

select * from v$sqlarea;

select * from v$session;

select * from v$process ;

select * from v$locked_object;

select * from all_objects;

select * from v$session_wait;

--檢視被鎖的表

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;

--檢視連線的程序

select sid, serial#, username, osuser from v$session;

--3.查出鎖定表的sid, serial#,os_user_name, machine_name, terminal,鎖的type,mode

select s.sid, s.serial#, s.username, s.schemaname, s.osuser, s.process, s.machine,

s.terminal, s.logon_time, l.type

from v$session s, v$lock l

where s.sid = l.sid

and s.username is not null

order by sid;

這個語句將查詢到資料庫中所有的dml語句產生的鎖,還可以發現,

任何dml語句其實產生了兩個鎖,乙個是表鎖,乙個是行鎖。

--殺掉程序 sid,serial#這兩個資料來自上面第三步

alter system kill session '210,11562';

Oracle 資料庫中的鎖 處理

1.診斷系統中的鎖 select no merge a no merge b no merge c wait status a.username,a.machine,a.sid,a.serial a.last call et seconds b.id1,c.sql text sql from v s...

Oracle資料庫表被鎖

1 資料庫表被鎖的現象 在運算元據庫時,有的時候我們會很突然的遇到資料庫報下面這個錯誤 sql view plain copy ora 00054 resource busy andacquire with nowait specified 第乙個可能的原因是在lock table 和select ...

Oracle資料庫鎖表查詢

檢視資料庫最大連線數 select value from v parameter where name processes 更改資料庫連線數 alter system set processes 3000 scope spfile 檢視被鎖的表 select b.owner,b.object nam...