文档解释
ORA-08120: Need to create SYS.IND_ONLINE$ table in order to (re)build index
Cause: Alter index Build/Rebuild online require existing of SYS.IND_ONLINE$ table.
Action: User/DBA needs to create sys.ind_online$ before alter the index /rdbms/admin/catcio.sql contains script to create ind_online$.
ORA-08120是ORACLE数据库中的一个错误,该错误表明必须为创建、重构或修改索引而定义 SYS.IND_ONLINE$ 表。
官方解释
该错误是由全局数据库资源限制造成的,可能是数据库没有正确配置,或者尚未设置SYS.IND_ONLINE$表的存在。
常见案例
1、当用户试图创建一个索引时,如果SYS.IND_ONLINE$表不存在,则会出现这个错误。
2、当用户尝试重新构建索引时,如果SYS.IND_ONLINE$表不存在,则可能会出现这个错误。
正常处理方法及步骤
1、可以使用以下查询检查表是否存在:
SELECT COUNT(*) FROM DBA_TABLES WHERE TABLE_NAME = ‘IND_ONLINE$’;
如果返回 0,说明该表不存在。
2、创建SYS.IND_ONLINE$表:
CREATE TABLE SYS . IND_ONLINE$(
INDEX_ID NUMBER NOT NULL,
START_DATE DATE NOT NULL
);
3、如果您的索引正在使用这个表,可以使用以下查询,查看它们是否存在于SYS.IND_ONLINE$中:
SELECT INDEX_ID FROM SYS . IND_ONLINE$;
4、重新构建索引,可以使用以下查询:
ALTER INDEX REBUILD;