ORA-00600: internal error code, arguments: [13011]

abstractcyj發表於2020-08-26

近期,一客戶歷史資料庫屢次遇到ORA-00600: internal error code, arguments: [13011]。附帶的,還有ORA-01499

SQL> analyze table WRH$_IOSTAT_DETAIL validate structure cascade;

analyze table WRH$_IOSTAT_DETAIL validate structure cascade

*

ERROR at line 1:

ORA-01499: table/index cross reference failure - see trace file


這個錯誤主要是因為索引與表產生了不一致的情況,本例中索引中的資料要多於表。如下:

一般都是採用重建索引的方式解決。但是可能直接重建索引並不能達到修復的效果。今天的這個故障直接rebuild index未能修復

今天嘗試了一下table move再重建索引的辦法,效果也是可以的

alter table WRH$_IOSTAT_DETAIL move; 

alter index WRH$_IOSTAT_DETAIL_PK rebuild。


SQL> select /*+full(a) */ count(*) from WRH$_IOSTAT_DETAIL a

  2  ;


  COUNT(*)

----------

      5037


SQL> select /*+index(WRH$_IOSTAT_DETAIL_PK t) */ count(*) from WRH$_IOSTAT_DETAIL t;


  COUNT(*)

----------

      5037


至此,問題解決。

當然,對於特定的表,比如此例中的 WRH$_IOSTAT_DETAIL,是Oracle的automatic workload repository的一個表,跟業務本身沒有直接關係,跟使用者確認好資料不要的話,可以直接truncate也可以修復

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8520577/viewspace-2714709/,如需轉載,請註明出處,否則將追究法律責任。

相關文章