首页 / 数据库 / MySQL / ORA-08102 错误解决
今天两次遇到ORA-08102的错误,在删除表的数据时在执行如下语句时:delete from tb_ware w where w.issue like "%04%";遇到下面的错;ORA-08102:index key not found,obj#57848,file 6, block 6324(2)*******************************************************************************
/ *Cause: Internal error: possible inconsistency in index// *Action: Send trace file to your customer support representative, along
// with information on reproducing the error*******************************************************************************ORA-08102这种错误说明索引或表出现了数据不一致的,索引上记录的键值和表里的数据不一致,引起访问失败,一般重建下索引就可以解决
解决方法一:SELECT owner, object_name, object_type
FROM Dba_Objects
WHERE object_id IN (57848);可以查出object_name的名字,发现是表TB_WARE的索引,然后重建索引alter index PK_TB_WARE rebuild online; (记得要用rebuild online ,因为他会重新读表来创建索引,而rebuild可能会读取原先的索引段而不会去读表)注意,这个时候千万不要人为终止,如果你真的那样的话你会遇到ora-08104如果还不能解决,就删除重新创建select index_name,column_name from all_ind_columns
where index_name="PK_TB_WARE";
drop index PK_TB_WARE;create index PK_TB_WARE on tb_ware(id);解决方法二:analyze table t validate structure cascade检查表里的行数据的完全性,并检查表或者索引的结构,并把分析过的结果写入INDEX_STATS 数据字典中这个方法我没有尝试,我尝试再让问题重现,尝试好几次也没有在出现---------------------------------现在回到我的问题上,我在rebuild online一个索引后,它又提示下一个索引有问题,我索性就把这个表所有的索引都rebuild online查出这个表的索引
select * from user_indexes t where t.table_name= upper("tb_ware")组装成下面的语句执行:alter index PK_TB_WARE rebuild online;
alter index AK_TB_WARE rebuild online;
alter index IDX_TB_WARE_PRINTSTATE rebuild online;
alter index IDX_WARE_END_TIME rebuild online;
alter index IDX_WARE_LOTTERY_ID rebuild online;
alter index IDX_WARE_LOTTERY_STATE rebuild online;
alter index IDX_WARE_TEAM_NAME rebuild online;
再次使用这个表,或到alert.log里就没有ORA-08102的错误了---end----Oracle 单实例 从32位 迁移到 64位 方法 http://www.linuxidc.com/Linux/2012-03/55759.htm在CentOS 6.4下安装Oracle 11gR2(x64) http://www.linuxidc.com/Linux/2014-02/97374.htmOracle 11gR2 在VMWare虚拟机中安装步骤 http://www.linuxidc.com/Linux/2013-09/89579p2.htmDebian 下 安装 Oracle 11g XE R2 http://www.linuxidc.com/Linux/2014-03/98881.htm更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12本文永久更新链接地址