暂无图片
暂无图片
2
暂无图片
暂无图片
暂无图片

ORA-00600 [13013], [5001], [268] 问题分析及恢复

1. 适用范围

Oracle Database - Enterprise Edition - Version 10.1.0.2 and later Gen 1 Exadata Cloud at Customer (Oracle Exadata Database Cloud Machine) - Version N/A and later Oracle Cloud Infrastructure - Database Service - Version N/A and later Oracle Database Exadata Express Cloud Service - Version N/A and later Oracle Database Cloud Exadata Service - Version N/A and later Information in this document applies to any platform.

2. 问题概述

Thu Jul 14 11:05:27 20xx Errors in file /u01/app/oracle/diag/rdbms/xx/xx1/trace/xx1_smon_82061.trc (incident=5274893): ORA-00600: internal error code, arguments: [13013], [5001], [268], [8432040], [0], [8432040], [17], [], [], [], [], [] Incident details in: /u01/app/oracle/diag/rdbms/xx/xx1/incident/incdir_5274893/xx1_smon_82061_i5274893.trc

3. 问题原因

### 1. ORA-600 [13013]解释 ORA-600 [13013] [a] [b] [c] [d] [e] [f] This format relates to Oracle Server 8.0.3 to 10.1 Arg [a] Passcount Arg [b] Data Object number Arg [c] Tablespace Relative DBA of block containing the row to be updated Arg [d] Row Slot number Arg [e] Relative DBA of block being updated (should be same as [c]) Arg [f] Code ### 2. 查找Data Object对象及索引 Select object_name,object_type,owner from dba_objects where data_object_id=<value reported in argument b> ; SQL> set linesize 200 pagesize 9999 SQL> col object_name for a20 SQL> Select object_name,object_type,owner from dba_objects where data_object_id=268; OBJECT_NAME OBJECT_TYPE OWNER -------------------- ------------------- ------------------------------ SMON_SCN_TIME TABLE SYS SMON_SCN_TO_TIME_AUX CLUSTER SYS SQL> SQL> select owner,index_name,index_type,table_owner,table_name from dba_indexes where (table_owner,table_name) in ( 2 Select owner,object_name from dba_objects where data_object_id=268 3 ); OWNER INDEX_NAME INDEX_TYPE TABLE_OWNER TABLE_NAME ---------- ------------------------------ --------------------------- --------------- -------------------- SYS SMON_SCN_TIME_SCN_IDX NORMAL SYS SMON_SCN_TIME SYS SMON_SCN_TO_TIME_AUX_IDX CLUSTER SYS SMON_SCN_TO_TIME_AUX SYS SMON_SCN_TIME_TIM_IDX NORMAL SYS SMON_SCN_TIME SQL> ### 3. 检查表/索引是否有损坏 SQL> Analyze table sys.smon_scn_time validate structure online ; Table analyzed. SQL> SQL> Analyze table sys.smon_scn_time validate structure cascade online ; ORA-01499: table/index cross reference failure - see trace file SQL> ORA-1499. Table/Index row count mismatch,以上报错说明表和索引存在不一致的问题。 ### 4. 生成索引DDL语句 SQL>spool /tmp/createindex.sql SQL>Set long 100000000 SQL>Select dbms_metadata.get_ddl('INDEX','<Index name>',<'user name>') from dual SQL>Spool off spool /tmp/createindex.sql Set long 100000000 Select dbms_metadata.get_ddl('INDEX','SMON_SCN_TO_TIME_AUX_IDX','SYS') from dual; Select dbms_metadata.get_ddl('INDEX','SMON_SCN_TIME_SCN_IDX','SYS') from dual; Select dbms_metadata.get_ddl('INDEX','SMON_SCN_TIME_TIM_IDX','SYS') from dual; Spool off

4. 解决方案

### 1. 重建索引 drop index "SYS"."SMON_SCN_TO_TIME_AUX_IDX"; drop index "SYS"."SMON_SCN_TIME_SCN_IDX"; drop index "SYS"."SMON_SCN_TIME_TIM_IDX"; CREATE INDEX "SYS"."SMON_SCN_TO_TIME_AUX_IDX" ON CLUSTER "SYS"."SMON_SCN_TO_TIME_AUX" TABLESPACE "SYSTEM"; CREATE UNIQUE INDEX "SYS"."SMON_SCN_TIME_SCN_IDX" ON "SYS"."SMON_SCN_TIME" ("SCN") TABLESPACE "SYSAUX"; CREATE UNIQUE INDEX "SYS"."SMON_SCN_TIME_TIM_IDX" ON "SYS"."SMON_SCN_TIME" ("TIME_MP") TABLESPACE "SYSAUX"; ### 2. 检查表/索引是否有损坏 SQL> Analyze table sys.smon_scn_time validate structure online ; Table analyzed. SQL> Analyze table sys.smon_scn_time validate structure cascade online ; Table analyzed. SQL>

5. 参考文档

How to resolve ORA-00600 [13013], [5001] (Doc ID 816784.1) NOTE:563070.1 - ORA-1499. Table/Index row count mismatch
最后修改时间:2022-07-30 10:24:48
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论