ITPub博客

首页 > 数据库 > Oracle > trouble shooting:ORA-00054

trouble shooting:ORA-00054

原创 Oracle 作者:a960549548 时间:2025-06-05 14:24:24 0 删除 编辑
  • 问题描述

ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效 发生异常

原因:其他Session已经对目标表做了操作,且未提交操作,导致锁表,新的Session无法再对表进行DDL操作。

  • 解决方法

Plan-A:等待原session执行完对表的操作,或commit对表的操作。

Plan-B:关闭原会话。

 --   查询被的会话  ID

1
select  session_id  from  v$locked_object;

--  查询结果:  SESSION_ID-------9

 --   查询上面会话的详细信息:

1
SELECT  sid, serial#, username, osuser  FROM  v$session  where  sid = 9;

--  查询结果:  serial#------99

 --   将上面锁定的会话关闭:

1
ALTER  SYSTEM KILL SESSION  '9,99' ;

 --  给出对象,直接把涉及到的会话全kill

1
2
select  'ALTER SYSTEM KILL SESSION ' '' ||sid|| ',' ||serial#|| '' ';'  from  v$session  where  sid  in
( select  session_id  from  v$locked_object  where  object_id  in  ( select  object_id  from  dba_objects  where  object_name= 'C_xxx' ));


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70013625/viewspace-3086769/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Oracle ACE,MySQL 8.0 OCP,PMP,拥有OceanBase OBCP,TiDB PCTP,GoldenDB GDCP等多项认证,ITPUB认证专家,微信公众号:DBA之友。

注册时间:2022-02-08

  • 博文量
    132
  • 访问量
    171504