ORA-00054 的解決方法(2010-09-21 15:31:29)
系統(tǒng)有一個不用的索引,想刪除這個索引,
SQL> drop index GPSTIME_GLOBAL_INDEX 2 / drop index GPSTIME_GLOBAL_INDEX * ERROR at line 1: ORA-00054: resource busy and acquire with NOWAIT specified
現(xiàn)現(xiàn)這個問題的原因是正在執(zhí)行的操作請求的資源正被其他事務(wù)鎖定。
出現(xiàn)這種問題后查V$LOCKED_OBJECT,要么等事務(wù)結(jié)束后再做,要么殺掉持有鎖的會話(如果不是關(guān)鍵會話):
1.通過上句查找出已被鎖定的數(shù)據(jù)庫表及相關(guān)的sid、serial#及spid select object_name as 對象名稱,s.sid,s.serial#,p.spid as 系統(tǒng)進程號 from v$locked_object l , dba_objects o , v$session s , v$process p where l.object_id=o.object_id and l.session_id=s.sid and s.paddr=p.addr;
2.在數(shù)據(jù)庫中滅掉相關(guān)session alter system kill session 'sid,serial#';--sid及serial#為第一步查出來的數(shù)據(jù)。
|