欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

表被锁的解决办法

程序员文章站 2022-05-24 13:15:44
...
用下面语句查询那些表被锁。
 
SELECT /*+ rule*/ 
a.sid, b.owner, object_name, object_type 
FROM v$lock a, all_objects b 
WHERE TYPE = 'TM' 
and a.id1 = b.object_id; 
 
 
===============================
 

查看锁表进程SQL语句1:

select sess.sid,
    sess.serial#,
    lo.oracle_username,
    lo.os_user_name,
    ao.object_name,
    lo.locked_mode
    from v$locked_object lo,
    dba_objects ao,
    v$session sess
where ao.object_id = lo.object_id and lo.session_id = sess.sid;

 

查看锁表进程SQL语句2:

select * from v$session t1, v$locked_object t2 where t1.sid = t2.SESSION_ID;

 

 

杀掉锁表进程:

如有記錄則表示有lock,記錄下SID和serial# ,將記錄的ID替換下面的738,1429,即可解除LOCK
alter system kill session '738,1429';

 

 
相关标签: Oracle SQL OS