ORA-00054: 资源正忙 --锁表的解决方法

ORA-00054: 资源正忙 --锁表的解决方法

  • 问题描述
    • ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效 发生异常
    • 原因:其他Session已经对目标表做了操作,且未提交操作,导致锁表,新的Session无法再对表进行DDL操作。
  • 解决办法
    • Plan-A:等待原session执行完对表的操作,或commit对表的操作。
    • Plan-B:关闭原会话

关闭原会话解除表锁

--查询被锁的会话ID
select session_id from v$locked_object;
--查询结果:SESSION_ID-------9

--查询上面会话的详细信息:
SELECT sid, serial#, username, osuser FROM v$session where sid = 9;
--查询结果:serial#------99

--将上面锁定的会话关闭:
ALTER SYSTEM KILL SESSION '9,99';

特别鸣谢:行者林峰-ORA-00054: 资源正忙 --锁表的解决方法

原文地址:https://www.cnblogs.com/lcxhk/p/14078098.html