oracle 删除表时提示资源正忙
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 删除表时提示资源正忙相关的知识,希望对你有一定的参考价值。
删除表时提示ora_00054资源正忙错误,我用了以下语句查不出来被锁记录,无法删掉被锁进程,请问这个问题该怎么解决?
select p.spid,
c.object_name,
b.session_id,
b.oracle_username,
b.os_user_name,
b.locked_mode,
a.status,
a.logon_time,
a.state,
a.SID,
a.serial#
from v$process p, v$session a, v$locked_object b, all_objects c
where p.addr = a.paddr
and a.process = b.process
and c.object_id = b.object_id
and c.object_name = 'BQDW_BD_PSNDOC'
求高手,在线等
解决办法:停止使用该数据库表的相关服务。
2、truncate table tablename DROP STORAGE;
释义:删除表,并且释放存储空间。truncate的意思是清空表数据, “DROP STORAGE”是释放存储空间。 参考技术A 首先要解锁啊,然后才能删除追问
我都没查到被锁的记录哇。都没查到记录怎么解锁再删除。。
追答select * from v$locked_object 里有记录吗
追问有两条记录
追答有你要删除的表吗?
还有你是不是有其他的窗口在修改这张表 没有提交
以上是关于oracle 删除表时提示资源正忙的主要内容,如果未能解决你的问题,请参考以下文章
Oracle中修改表名遇到“ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效”
ORACLE:在 dbms_redefinition 后删除临时表时出错