ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效出现此错误提示,有表被锁定了;
1.查找哪个会话锁住了哪张表
select l.session_id,o.owner,o.object_name from v$locked_object l,dba_objects o where l.object_id=o.object_id;
2.找出引发锁的会话
select s.username,s.sid,s.serial#,s.logon_time from v$locked_object l,v$session s where l.session_id=s.sid order by s.logon_time;
3.杀掉会话
alter system kill session 'sid,serial#'
alter system kill session '786,43305';
辅助命令:
SELECT sid, serial#, username, osuser FROM v$session where sid in(select session_id from v$locked_object);