在执行一个procedure的时候出现如下log
ORA-08102: 未找到索引關鍵字,obj# 52235,dba 293728808 (2)
SQL> select * from dba_objects where object_id=52235;
no rows selected
SQL> select obj#,dataobj#,owner#,name,type# from obj$ where obj#=52235;
OBJ# DATAOBJ# OWNER# NAME TYPE#
---------- ---------- ---------- ------------------------------ ----------
52235 53432 59 SYS_IL0000052233C00001$$ 1
SQL> select table_name,column_name,segment_name,index_name from dba_lobs where index_name='SYS_IL0000052233C00001$$';
TABLE_NAME
------------------------------
COLUMN_NAME
--------------------------------------------------------------------------------
SEGMENT_NAME INDEX_NAME
------------------------------ ------------------------------
COMMON_MAIL_LOB1
LOB_LOC
LOGSEGMENT SYS_IL0000052233C00001$$
猜测应该是common_mail_lob1 上的lob字段lob_loc的index有问题
重建index,但是重建idnex的时候出现ORA-02327: cannot create index on expression with datatype LOB
解决方法:移动LOB的索引,通过特定的语法来移动LOB的对心
SQL>alter table mgssfcs.COMMON_MAIL_LOB1 move tablespace MGSSFCSDATA
lob(LOB_LOC) store as logsegment (tablespace MGSSFCSDATA);
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24849178/viewspace-747189/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/24849178/viewspace-747189/