首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏乐沙弥的世界

    ORA-00054 故障处理一例

    --************************ -- ORA-00054 故障处理一例 --************************ 最近index job出现失败,于是尝试手动执行试试 收到了ORA-00054的错误消息。 ESMDBA.ESM_PRCS_ERR_IDX1 rebuild; ALTER INDEX ESMDBA.ESM_PRCS_ERR_IDX1 rebuild * ERROR at line 1: ORA ERR_OID, MQ_MSGE FROM ESM_PRCS_ERR WHERE ERR_OID = :1 FOR UPDATE NOWAIT 四、进一步尝试 事实上此时做任何表结构的操作与分析都将会收到ORA validate structure; analyze index ESMDBA.ESM_PRCS_ERR_IDX1 validate structure * ERROR at line 1: ORA

    87330发布于 2018-08-14
  • 来自专栏bisal的个人杂货铺

    上周上线碰见的ORA-00054错误回放

    上周应用上线,有一个数据库脚本,包含改字段长度等操作,执行过程中,现象就是有些改字段成功了,有些执行出错,报了ORA-00054的错误。了解一下原理,就能对这个错误,有比较深入的理解了。 首先,我们模拟下报错过程,创建测试表,session 1执行update语句,但不提交,session 2执行alter table变更name字段长度,此时立即报错ORA-00054, SQL> create modify name varchar2(5); alter table tbl_lock modify name varchar2(5)             * ERROR at line 1: ORA -00054: resource busy and acquire with NOWAIT specified or timeout expired 我们看下报错,ORA-00054,提示的就是资源繁忙 (下篇) ---- 针对ORA-00054这问题,可以再了解一些。 从11g开始,出现了一个新的参数, ?

    1.6K30发布于 2019-01-29
  • 来自专栏开源部署

    ddl_lock_timeout ORA-00054 报错解决方法

                        integer    0 SQL> set timing on SQL> drop table test; drop table test           * 第 1 行出现错误: ORA alter session set ddl_lock_timeout = 10; SQL> drop table test; drop table test           * 第 1 行出现错误: ORA

    77010编辑于 2022-08-18
  • 来自专栏从ORACLE起航,领略精彩的IT技术。

    记录一则ORA-00054,ORA-00031解决过程

    普通表改造分区表,历史数据不要 这个需求很简单: pl/sql导出建表语句,依次修改成分区的建表语句,注意将索引修改成本地索引; drop 原表; create 新分区表. 1.重建过程中遇到问题:删除某表时报错ORA by ……(……); create unique index …… on MOD_RESALT_PERF_CARR_1X_ZTE(……) local tablespace …… compress; ORA 596,39243'; alter system kill session '596,39243' ORA-00031: session marked for kill 此状态下,若drop 此表仍然会报错ORA _1x_zte.tab Table dropped Table created Index created Index created Index created SQL> 7.总结:遭遇ORA

    1.1K20发布于 2019-05-24
  • 来自专栏bisal的个人杂货铺

    DDL_LOCK_TIMEOUT的作用

    session2: SQL> drop table t; drop table t            * ERROR at line 1: ORA-00054: resource busy and SQL> drop table t; drop table t            * ERROR at line 1: ORA-00054: resource busy and acquire

    67530发布于 2019-01-29
  • 来自专栏GreenLeaves

    select for update和select for update wait和select for update nowait的区别

    nowait都会对查询到的当前结果集进行加锁,所不同的是,当有另外的会话在修改当前结果集中的数据,select for nowait所进行的查询操作不会进行等待,当发现结果集中的一些数据被加锁,立刻返回 “ORA 总结分析: 因为会话一,并没有commit所以test8中的ID=1的行被加锁了,所以当会话二进行select for update nowait检索到ID=1的数据行被加锁了,就立刻返回 “ORA-00054 select for update wait与select for update nowait不同的地方是,当有另外的会话对它的查询结果集中的某一行数据进行了加锁,那么它不会像nowait一样,立即返回"ORA -00054错误",而是它支持一个参数,设定等待的时间,当超过了设定的时间,那一行数据还处于加锁的状态,那么它也会返回“ORA-00054错误,内容是资源正忙, 但指定以 NOWAIT 方式获取资源”。 ,在执行select for update wait 6,如果当前查询检索的数据集中,有被加锁了的行数据,那么等待6秒,如果6秒后,其他会话,还没有执行commit释放被加了锁的数据行的话,那么返回“ORA

    3.2K100发布于 2018-01-26
  • 来自专栏卯金刀GG

    ORACLE修改表信息

    SCOTT.TEST ADD ADDRESS VARCHAR2(40) --添加表列 ALTER TABLE SCOTT.TEST DROP COLUMN ADDRESS --删除表列 在修改的过程中提示 ORA -00054: 资源正忙,要求指定 NOWAIT 分析如下: ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效 解决方法如下: ================== 2:对该表进行ddl操作将会报:Ora-00054:resource busy and acquire with nowait specified. 同样这个查询的事务将会对该表加表级锁,不允许对该表的任何ddl操作,否则将会报出ora-00054错误::resource busy and acquire with nowait specified. 可以通过发出 select… for update nowait的语句来避免发生阻塞,如果资源已经被另一个会话锁定,则会返回以下错误:Ora-00054:resource busy and acquire

    2.7K30发布于 2019-07-28
  • 来自专栏杨建荣的学习笔记

    生产环境数据迁移问题汇总(r2第16天)

    ALTER TABLE xxxx DISABLE CONSTRAINT xxxxx_ACCOUNT_1FK * ERROR at line 1: ORA-00054: resource expired ALTER TABLE xxxx_ACCOUNT disable CONSTRAINT xxxx_ACCOUNT_1FK * ERROR at line 1: ORA

    1.4K70发布于 2018-03-14
  • 来自专栏bisal的个人杂货铺

    一张几亿的分区表,能改名么?

    NOWAIT加了EXCLUSIVE表级排他锁, LOCK TABLE "TBL_PAR" IN EXCLUSIVE MODE  NOWAIT 此时禁止对表进行DDL或DML操作,若执行了DDL操作,直接提示“ORA

    63540发布于 2019-01-29
  • 来自专栏数据和云

    一文搞懂Oracle 0 至 6 级锁(附案例详解)

    create index online >>表锁的情况下 locked_mode 2不影响后一个locked_mode 2、3、4、5的会话,如果后一个会话locked_mode为6,则后一个会话操作会提示ora ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired >>行锁的情况下 locked_mode 2对应行锁 Lock Row Exclusive >>表锁的情况下 locked_mode 3不影响后一个locked_mode 3的会话,但如果后一个会话locked_mode为4,5,6,则后一个会话操作会提示ora ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired >>行锁的情况下 locked_mode 3的表锁对应行锁 id=11; 1 row updated sid2,直接报错 SQL> drop table test; drop table test * ERROR at line 1: ORA

    6.1K22发布于 2020-04-14
  • 来自专栏全栈程序员必看

    oracle r修改表名,oracle中修改表名「建议收藏」

    comma; 但指定以 NOWAIT 方式获取资源, 或者超时失效” Oracle 11g中想修改表名: rename ASSETPORJECT to ASSETPROJECT; 结果提示:ORA

    3.2K20编辑于 2022-08-29
  • 来自专栏bisal的个人杂货铺

    Oracle中执行truncate操作出现hang

    于是开始执行truncate, truncate table test; 此时提示错误, ORA-00054: resource busy and acquire with NOWAIT specified

    91340发布于 2021-11-08
  • 来自专栏Albert陈凯

    2018-07-12 Oracle for update和for update nowait的区别Oracle for update和for update nowait的区别

    所不同的是,如果另外一个线程正在修改结果集中的数据, for update nowait 不会进行资源等待,只要发现结果集中有些数据被加锁,立刻返回 “ORA-00054错误,内容是资源正忙, 但指定以 update的区别: 别的事务要对这个表进行写操作时,是等待一段时间还是马上就被数据库系统拒绝而返回.制定采用nowait方式来进行检索,所以当发现数据被别的session锁定中的时候,就会迅速返回ORA

    2.1K20发布于 2018-07-24
  • 来自专栏开源部署

    Oracle实例之HWM(高水位线)性能优化

    ; SQL> set timing on; SQL> SELECT count(*) FROM TABLE_NAME; 3.表移动 alter table table_name move; 报错:ORA

    1.9K10编辑于 2022-08-17
  • 来自专栏码上修行

    【史上最详解】Oracle数据库各种"锁" - 看完这篇就够了!

    2:对该表进行ddl操作将会报: Ora-00054:resource busy and acquire with nowait specified. ? 同样这个查询的事务将会对该表加表级锁,不允许对该表的任何ddl操作,否则将会报出ora-00054错误::resource busy and acquire with nowait specified. 同样这个查询的事务将会对该表加表级锁,不允许对该表的任何 ddl 操作,否则将会报出 Ora-00054:resource busy and acquire with nowait specified. 可以通过发出 select ... for update nowait 的语句来避免发生阻塞,如果资源已经被另一个会话锁定,则会返回以下错误:Ora-00054:resource busy and acquire

    22.6K87发布于 2019-06-26
  • 来自专栏JiekeXu之路

    Oracle 索引监控

    CC.I_T_BATCH_06; drop index CC.I_T_BATCH_07; drop index CC.I_T_BATCH_08; 注意:添加索引监控一定要在业务低峰或者晚上停止业务的时候添加,不然会报“ORA ERROR at line 1: ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired 全文完,希望可以帮到正在阅读的你

    1.8K40编辑于 2022-12-07
  • 来自专栏架构师之旅

    Oracle的常见问题汇总(3) ——​数据库死锁原因及解决办法

    数据库表被锁的现象 在操作数据库时,有的时候我们会很突然的遇到数据库报下面这个错误 ORA-00054: resource busy and acquire with NOWAIT specified

    3.5K50发布于 2018-01-30
  • 来自专栏小工匠聊架构

    ORACLE常用性能监控SQL【一】

    文章目录 系列 死锁后的解决办法 生成Kill Session语句 查看导致死锁的 SQL 查看谁锁了谁 ORA-00054 资源正忙,要求指定 NOWAIT 查询绑定变量使用的实际值 监控事例的等待 ---- ORA-00054 资源正忙,要求指定 NOWAIT 演示: select * from emp for update ;--通过for update 获取一个排它锁 SQL>select object_name

    3.1K20发布于 2021-08-16
  • 来自专栏乐沙弥的世界

    使用 Oracle Datapump API 实现数据导出

    JOB_EXP scott@CNMMBO> drop table job_exp; drop table job_exp * ERROR at line 1: ORA

    1.4K40发布于 2018-08-14
  • 来自专栏bisal的个人杂货铺

    间隔分区报错ORA-14758

    the range section cannot be dropped 这种方法的弊端,需要NOWAIT对表加EXCLUSIVE锁,影响正常交易,如果此时,有其他交易进行,alter table则会抛ORA

    1.1K30发布于 2019-06-11
领券