1.Oracle数据库报错
ORA-00054-RESOURCE BUSY AND ACQUIRE WITH NOWAIT SPECIFIED OR TIMEOUT EXPIRED
1.1问题分析
资源忙,被占用了。处理思路:查到谁在占用资源,并且杀掉占用该资源的会话就可以了。有可能产生的原因有:1.创建索引时会产生的锁 2.dml 语句会产生的锁 3.索引创建时加上关键字 online时产生的锁。解决处理方法:1.等待其他会话释放资源 2.找出占用资源的会话,并删除 3.重启数据库,当然只有第2种比较适用。
2.解决流程如下
2.1查询sid
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;
2.2根据sid查询session
SELECT sid, serial#, username, oSUSEr,
terminal,program ,action, prev_exec_start
FROM v$session where sid = 1163;
2.3根据session杀死
alter system kill session '2294,15306';
alter system kill session '597,29005';
alter system kill session 'sid, serial#';