检查被锁定的user_object,然后kill对应session
SELECT SESSION_ID,USER_OBJECTS.* FROM V$LOCKED_OBJECT,USER_OBJECTS WHERE V$LOCKED_OBJECT.OBJECT_ID = USER_OBJECTS.OBJECT_ID
select 'alter system kill session '||''''||trim(s.sid)||','||trim(s.serial#)||''';'
from v$session s,v$process p
where s.paddr = p.addr and (s.username='DW');
将用户名DW替换为待锁定的用户,查询出来的多条alter语句放到plsql->命令窗口粘贴执行即可。
附:
查看锁表进程SQL语句:
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;