Oracle 锁表

--解除被锁定的表
--第一步 查出被锁定的对象,其中object_id是对象的ID,session_id是被锁定对象有session ID 如查询不到请用下面的SQL语句查询
select * from v$locked_object;

--第二步 sid = 第1步中查出来的session_id;
select sid, serial#, machine, program from v$session where sid ='797';

--第三步 用来杀死这个会话; 引号里的值 是第二部查出来的值
alter system kill session 'sid,serial#';

 


--查询被锁定的表
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;

--被锁定的表是由那个Session引起的
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;

posted on 2015-09-10 10:45  Yangguang.Liu  阅读(173)  评论(0)    收藏  举报