查看锁表,杀掉锁表进程

1、查看sid seria

SELECT /*+ rule */  s.username,  decode(l.type, 'TM', 'TABLE LOCK' , 'TX', 'ROW LOCK', NULL ) LOCK_LEVEL,  o.owner,  o.object_name,  o.object_type,  s.sid,  s.serial#,  s.terminal,  s.machine,  s.program,  s.osuser   FROM v$session s, v$lock l, dba_objects o  WHERE l.sid = s.sid    AND l.id1 = o.object_id(+) AND s.username is NOT Null and s.username = 'Oracle数据库用户名' and length2(s.machine)=4

2、确认活跃进程 (可以根据sql片段或者表明来确认锁表进程)

select a.SID,a.SERIAL#,sql_text   from v$session a, v$sqltext_with_newlines b  where DECODE(a.sql_hash_value, 0 , prev_hash_value, sql_hash_value) =        b.hash_value    and a.sid in (1085 , 1549, 1012, 2270, 1050, 2055, 869 )  and sql_text = 'sql片段或者锁表的表名'

3、杀掉进程

alter system kill session 'sid,serial#';

原文地址:https://www.cnblogs.com/chengxy/p/4071637.html