数据库常见死锁问题处理

来源:互联网 发布:西乡隆盛知乎 编辑:程序博客网 时间:2024/05/28 05:14

  1、ORA-00054:资源正忙,要求指定NOWAIT

创建索引的时候报错ORA-00054: resource busy and acquire with NOWAIT specified

或者删除表、修改表结构的时候报如上的错误

解决方法:

1:等待其他会话释放资源

2:找出占用资源的会话,并删除 ,删除死锁

 找出所有被锁的对象,定位出哪个回话占用

select l.session_id,o.owner,o.object_name

from v$locked_object l,dba_objects o

where l.object_id=o.object_id


找出所有照成锁的会话

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;


kill 所有占用资源的会话

命令形式:alter system kill session 'sid,serial#';

占用test_1的资源的会话:

alter system kill session '158,15184';

alter system kill session '146 ,8229';



 


0 0