事务取消后试图重建索引的错误

 
   | |

导读:事务取消的时候,它完成的任务就需要进行回滚。取消之前事务的运行时间越长,那么很有可能它回滚的时间也就越长。在事务回滚完成之前,DDL命令如……

关键词:Oracle错误 ROW-X锁 重建索引的错误

正在加载数据... 【TechTarget中国原创】有一个事务所花的时间比一般的要多,所以用户就终止了会话(ctrl+alt+del)。现在表中出现了ROW-X锁。有关该锁的详细信息如下……,在这个表上出现了有关重建索引的错误……

【TechTarget中国原创】:有一个事务所花的时间比一般的要多,所以用户就终止了会话(ctrl+alt+del)。现在表中出现了ROW-X锁。有关该锁的详细信息如下:

 OS User : rosemarie
 OS PID : 396:482
 Oracle User : ROSEM
 Oracle ID : 27
 Lock Type : DML
 Lock Held : Row-X (SX)
 Lock Requested : None
 Status : Not Blocking
 Object Owner : TOTALPLANT
 Object Name : CUS_PRODUCTS

  在这个表上出现了有关重建索引的错误:

 alter index CUS_PRODUCT_IDX1 rebuild tablespace
 TBSIDX_001
 *
 ERROR at line 1:
 ORA-00054: resource busy and acquire with NOWAIT
 specified

  谢谢。

  答:事务取消的时候,它完成的任务就需要进行回滚。取消之前事务的运行时间越长,那么很有可能它回滚的时间也就越长。在事务回滚完成之前,DDL命令如ALTER INDEX REBUILD不会获取这个需要完善的锁,当然这种命令也不会等着锁发布。这就是ORA-54错误信息要告诉你的。你得到这一反应的同时,长时间运行的事务本应该已经回滚完成。所以ALTER INDEX REBUILD语句应该就可以解决了。

 
查看全文
 
 
 
 
 

Oracle错误

 
Oracle通常将没有引号的标识符转换成大写键盘的,在提交查询时你必须给列名加入双引号以避免出现错误。
 
在Oracle中,CLOB列包含了分隔的10位代码,如何避免重复的代码是一件比较麻烦的事,专家给出了三种解决方法,你可以根据自身情况进行选择。
 
在Windows 2003操作系统下安装了Oracle 8i数据库软件,使用的时候发生Ora-1067错误,出现这一问题的原因是什么,Oracle专家给出了解释。
 
如何在触发器内部建立一个索引,专家说如果DML是EXECUTE IMMEDIATE语句的一部分,你就可以在触发器中执行DML。
 
在进行Oracle实例维护时出现内存分配问题,导致无法启动新连接,正在运行的会话很慢,专家将给出解决方案。
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
电子邮件地址:
请输入您的电子邮件地址
密码:
下次自动登录