`
krs
  • 浏览: 127663 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

ORA-00054 资源锁定的解决方法

阅读更多

ORA-00054: resource busy and acquire with NOWAIT specified

说明请求的资源正被其他事务锁定
 
出现这种问题后查V$LOCKED_OBJECT,要么等事务结束后再做,要么杀掉持有锁的会话(如果不是关键会话):
1.通过上句查找出已被锁定的数据库表及相关的sid、serial#及spid

select object_name as 对象名称,s.sid,s.serial#,p.spid as 系统进程号
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.在数据库中灭掉相关session

alter system kill session 'sid,serial#';--sid及serial#为第一步查出来的数据

 (转自:http://blog.sina.com.cn/s/blog_681cd80d0100l4rd.html

分享到:
评论

相关推荐

    ORA-00060: 等待资源时检测到死锁--oracle 数据库表死锁异常

    在Oracle数据库系统中,"ORA-00060: 等待资源时检测到死锁" 是一个常见的错误提示,它表明两个或多个事务在执行过程中陷入了无法继续进行的状态,因为彼此都在等待对方释放资源。这种情况通常发生在并发操作中,比如...

    oracle ora-00054:resource busy and acquire with nowait specified解决方法

    总之,`ORA-00054`错误是并发环境下常见的问题,解决它需要理解Oracle的锁定机制,并通过查询数据库状态、分析SQL和终止会话等方法来恢复系统的正常运行。在日常运维中,预防此类问题的发生同样重要,这需要合理的...

    oracle报错大全(珍藏版)

    #### ORA-00054: Resource Not Acquired When Waited 在等待时未能获得资源。这可能是因为资源被其他用户占用或并发控制机制的问题。 #### ORA-00055: Data Manipulation Language (DML) Operations 执行DML操作时...

    ORA-00031:标记要终止的会话

    首先,要解决ORA-00031错误,我们需要找出被锁定的对象以及造成锁定的会话。我们可以使用以下SQL语句来查询这些信息: ```sql SELECT a_s.owner, a_s.object_name, a_s.object_type, vn.sid, vn.serial#, vs.spid ...

    oracle常见错误及解决方法

    12. ORA-00052, ORA-00053, ORA-00054, ORA-00055, ORA-00056, ORA-00057: 锁定和资源冲突 这些错误表明资源被其他会话占用,可能需要手动解除锁定或优化事务处理。 13. ORA-00058, ORA-00059, ORA-00060: 数据库...

    ORA-01033ORACLE错误解决

    2. **资源竞争或锁定**:在多用户环境中,如果某个操作长时间占用资源或者出现死锁,可能导致其他操作无法继续,从而触发ORA-01033错误。 3. **配置问题**:不正确的环境变量设置(如`ORACLE_SID`)或数据库参数配置...

    oracle数据库-错误编码大全

    - ORA-00054: 资源正忙,要求指定NOWAIT。在执行数据库操作时,所需的资源正被其他操作占用,如果用户希望不等待即刻获得资源,则可以在命令中使用NOWAIT选项。 - ORA-00055: 超出DML锁的最大数。当尝试获取的数据...

    ORACLE ORA错误大全

    这和ORA-00054类似,都是指死锁情况,解决方法也相同。 10. **ORA-00074: missing clause** - 指SQL语句中缺少必要的子句。例如,在`SELECT`语句中忘记了指定`FROM`子句。确保SQL语句完整无误是解决此类问题的关键...

    Oracle error code 大全

    ORA-00054:超出 DML 锁的最大数 ORA-00055:对象 '.' 上的 DDL 锁以不兼容模式挂起 ORA-00056:超出临时表锁的最大数 ORA-00057:DB_BLOCK_SIZE 必须为才可安装此数据库(非 ) ORA-00058:超出 DB_FILES 的最大值 ...

    Oracle数据库表定时备份表 表名动态拼接时间戳存储过程-解决了ORA-00922

    1、备份Oracle数据库表时添加动态时间戳,解决了ORA-00922: missing or invalid option 错误和ORA-00922: 选项缺失或无效错误。 2、备份表结构和数据,还备份索引、序列、触发器等对象,提高了备份速度。但需要手动...

    常见Oracle错误都在这了! ORA-00257/ORA-00313/ORA-28000/ORA-28000

    最直接的解决方法是清理不再需要的归档日志文件,释放空间,或者增加磁盘存储。然而,在Oracle 10g版本中,即使有大量可用空间,也可能出现此错误。这是因为Oracle 10g引入了Flash Recovery Area(闪回恢复区)特性...

    oracle报错的详细列表

    #### ORA-00054: 资源正忙,要求指定NOWAIT 当请求资源时发现资源正被占用,并且没有指定 `NOWAIT` 选项时触发。 #### ORA-00055: 超出DML锁的最大数 当达到最大DML锁的数量限制时触发。 #### ORA-00056: 对象'.'...

    Oracle错误代码大全.docx

    ORA-00054: 资源正忙,要求指定 NOWAIT ORA-00055: 超出 DML 锁的最大数 ORA-00056: 对象 '.' 上的 DDL 锁以不兼容模式挂起 ORA-00057: 超出临时表锁的最大数 ORA-00058: DB_BLOCK_SIZE 必须为才可安装此数据库 ...

    Oracle错误代码大全

    * ORA-00054: 资源正忙,要求指定 NOWAIT * ORA-00055: 超出 DML 锁的最大数 * ORA-00056: 对象 '.' 上的 DDL 锁以不兼容模式挂起 * ORA-00057: 超出临时表锁的最大数 * ORA-00058: DB_BLOCK_SIZE 必须为才可安装此...

    ORA-00600 reference

    - **KIESLBAS (500)**:锁定组件,负责实现数据资源的锁定机制。 - **KIESMBAS (700)**:内存管理组件,处理内存分配和管理任务。 - **KIESPBAS (900)**:系统参数组件,涉及配置参数的管理和验证。 - **KIESSBAS ...

    oracle 错误一览表

    #### ORA-00054: Resource busy and acquire with NOWAIT specified - **描述**:资源忙且获取时指定了 NOWAIT。 - **解决方法**:移除 NOWAIT 或等待资源可用。 #### ORA-00055: DML on a dictionary managed ...

    oracle错误一览表

    **ORA-00054: 资源正忙,要求指定NOWAIT** - **描述**: 尝试获取已被占用的资源。 - **解决方法**: 使用`NOWAIT`选项避免等待,并处理资源不可用的情况。 **ORA-00055: 超出DML锁的最大数** - **描述**: DML锁的...

Global site tag (gtag.js) - Google Analytics