数据库报:ORA-00054:资源正忙,要求指定NOWAIT
解决步骤:
1:等待其他会话释放资源
2:找出占用资源的会话,并删除
3:重启数据库
原理分析:
1:创建索引时会产生的锁
2:dml 语句会产生的锁
3:索引创建时加上关键字 online时产生的锁
select t2.username,t2.sid,t2.serial#,t2.logon_time
from v$locked_object t1,v$session t2
where t1.session_id=t2.sid order by t2.logon_time;
结果:
username sid serial# logon_time
SA 158 15184 2014/12/4 14:55:59
SA 146 8229 2014/12/4 15:23:22
SA 136 14314 2014/12/4 16:09:59
SA 131 54 2014/12/4 16:10:06
3:kill 所有占用资源的会话
命令形式:alter system kill session 'sid,serial#';
占用test_1的资源的会话:
alter system kill session '158,15184';
alter system kill session '146 ,8229';