Oracle中遇到“ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效”

Oracle中修改表名遇到“ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效”

 

Oracle 11g中想清空表数据:

truncate table TD21_BLACK_LIST;

结果提示:ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效。

看来有锁定该表的会话,于是,执行如下查询:

SELECT sid, serial#, username, osuser FROM v$session where sid 
in(select session_id from v$locked_object);
--kill掉相关的会话
ALTER SYSTEM KILL SESSION '597,1171';
597是SID值, 1171是SERIAL#值

重新执行

truncate table TD21_BLACK_LIST;

命令成功!

原文地址:https://www.cnblogs.com/mayhh/p/11193633.html