重庆思庄Oracle、、PostgreSQL、Redhat认证学习论坛

标题: ORA-08104: 该索引对象 498894 正在被联机建立或重建 [打印本页]

作者: 郑全    时间: 2016-8-28 14:09
标题: ORA-08104: 该索引对象 498894 正在被联机建立或重建
我们在线重建索引时,由于各种原因,临时中断了创建工作,这时,我们再去创建索引时,就会报:ora-08104的错误,怎么也不能创建,怎么办呢,第一次遇到这个问题,有点傻眼了吧,
这个时候,我们必须要把前面的创建清除,才可以继续.
如下:

SQL> alter index  NQ_REGISTER_DATE_2 rebuild  online tablespace TS_EXCHANGE;
alter index  NQ_REGISTER_DATE_2 rebuild  online tablespace TS_EXCHANGE

ORA-08104: 该索引对象 498894 正在被联机建立或重建


察看498894,正好就是这个索引:
Select object_name From dba_objects Where object_id=498894;
NQ_REGISTER_DATE_2


解决办法:

SQL> DECLARE
  2    RetVal BOOLEAN;
  3    OBJECT_ID BINARY_INTEGER;
  4    WAIT_FOR_LOCK BINARY_INTEGER;
  5  
  6  BEGIN
  7    OBJECT_ID := 498894;
  8    WAIT_FOR_LOCK := NULL;
  9    RetVal := SYS.DBMS_REPAIR.ONLINE_INDEX_CLEAN ();
10    COMMIT;
11  END;
12  /

之后,再去创建,就可以顺利创建了 .

SQL> alter index  NQ_REGISTER_DATE_2 rebuild  online tablespace TS_EXCHANGE;






欢迎光临 重庆思庄Oracle、、PostgreSQL、Redhat认证学习论坛 (http://bbs.cqsztech.com/) Powered by Discuz! X3.2