ORA-00600: [6749], [3], [12596882] in Oracle

ORA-00600:[6749], [3], [12596882] error in Alert log of Oracle

Step 1: Use the 3 argument present in error to find the file id and block id:

select  DBMS_UTILITY.data_block_address_file (12596882) "file#",
DBMS_UTILITY.data_block_address_block (12596882) "block#"
from dual;

file#  block#
----- ------
3      13970

Step 2: Find the object name and type from the following query:

select * from dba_extents where 13970 between block_id and block_id + blocks and file_id=3;

OWNER   SEGMENT_NAME        SEGMENT_TYPE
------- ------------------- ------------
SYSMAN  SYS_IOT_OVER_10448  TABLE

Step 3: Find the IOT name related to which table:

SQL> select owner,iot_name from dba_tables where table_name ='SYS_IOT_OVER_10448';

OWNER   IOT_NAME
------ ----------------
SYSMAN  MGMT_METRICS_RAW

Step 4: Analyze the table to verify the structure

SQL>  ANALYZE TABLE SYSMAN.MGMT_METRICS_RAW VALIDATE STRUCTURE CASCADE;
Table analyzed.

Step 5: Check the table with select statement

select * from SYSMAN.MGMT_METRICS_RAW;

Note: If no error find that means,table is fine.If error occurred follow step 6:

Step 6: If table is fine follow following steps
1. Ensure you have a good backup before proceeding.

2. Create a copy of the SYSMAN.MGMT_METRICS_RAW table:

SQL> create table SYSMAN.MGMT_METRICS_RAW_COPY as select * from SYSMAN.MGMT_METRICS_RAW;

3. Truncate the table:

SQL> truncate table SYSMAN.MGMT_METRICS_RAW;

Note: May need  to disable trigger: “sysman.raw_metrics_after_insert” before proceeding. Check the trigger present on table disable it:
Re-enable after the insert.

alter trigger trigger_name disable;
alter trigger trigger_name enable;

4. Start the Re-insert the rows:

insert into SYSMAN.MGMT_METRICS_RAW select * from SYSMAN.MGMT_METRICS_RAW_COPY;
commit;

5. Drop the copy table:

SQL> drop table SYSMAN.MGMT_METRICS_RAW_COPY;

Step 7: If error come related to corruption:
Check the data with where clause with different date format that select statement running fine
I found error in my data on 1-jun-2013 then

select * from sysman.MGMT_METRICS_RAW where trunc(collection_timestamp)='1-JUN-2013'

Both statement running fine but 1-jun-2013 equal operation is giving error.

Step 8: Took export backup with where clause of table

Step 9: Truncate the table

Step 10: Disable the trigger: “sysman.raw_metrics_after_insert” before proceeding.

alter trigger trigger_name disable;

Step 11: Imp the backup of the table with ignore=y clause.

Step 12: Enable the trigger:

alter trigger trigger_name enable;





Leave a Reply