客户报修客户端无法连接,远程查查看服务器发现数据库归档空间已满,警告日志报大量ORA-00600错误,数据库版本为10204.如下:

Wed Aug 14 04:00:48 2013
Errors in file /home/oracle/orabase/admin/ORACLE/bdump/oracle_j000_8737.trc:
ORA-00600: internal error code, arguments: [6749], [3], [12589943], [372], [], [], [], []
Wed Aug 14 05:00:54 2013
Errors in file /home/oracle/orabase/admin/ORACLE/bdump/oracle_j000_1951.trc:
ORA-00600: internal error code, arguments: [6749], [3], [12589943], [372], [], [], [], []
Wed Aug 14 06:00:54 2013
Errors in file /home/oracle/orabase/admin/ORACLE/bdump/oracle_j000_16345.trc:
ORA-00600: internal error code, arguments: [6749], [3], [12589943], [372], [], [], [], []
Wed Aug 14 07:00:57 2013
Errors in file /home/oracle/orabase/admin/ORACLE/bdump/oracle_j000_9416.trc:
ORA-00600: internal error code, arguments: [6749], [3], [12589943], [372], [], [], [], []
Wed Aug 14 08:01:02 2013
Errors in file /home/oracle/orabase/admin/ORACLE/bdump/oracle_j000_6155.trc:
ORA-00600: internal error code, arguments: [6749], [3], [12589943], [372], [], [], [], []
Wed Aug 14 08:28:37 2013

由于报ora-600错误产生大量trc文件导致系统空间不足,导致数据库无法启动。查看mos获取解决方法如下三种。

1、ORA-600 [6749] "delete/update failed" (文档 ID 37955.1)

Note: For additional ORA-600 related information please read Note:146580.1
PURPOSE:
  This article represents a partially published OERI note.
  It has been published because the ORA-600 error has been
  reported in at least one confirmed bug.
  Therefore, the SUGGESTIONS section of this article may help
  in terms of identifying the cause of the error.
  This specific ORA-600 error may be considered for full publication
  at a later date. If/when fully published, additional information
  will be available here on the nature of this error.
SUGGESTIONS:
  Run an ANALYZE TABLE <table_name> VALIDATE STRUCTURE CASCADE;
  for all tables involved.
  If the Known Issues section below does not help in terms of identifying
  a solution, please submit the trace files and alert.log to Oracle
  Support Services for further analysis.

2、ORA-600 [6749] Occurring on SYSMAN.MGMT_METRICS_RAW (文档 ID 467439.1)

In this Document
  Symptoms
  Cause
  Solution
  References
APPLIES TO:
Oracle Server - Enterprise Edition - Version: 10.2.0.3 and later   [Release: 10.2 and later ]
Information in this document applies to any platform.
***Checked for relevance on 28-Feb-2012***
SYMPTOMS
1. The following error is occurring in the alert.log:
ORA-00600: internal error code, arguments: [6749], [6], [12605862], [78], [], [], [], []
2. The trace file may report the DBA and block number for the error. If it does not, please engage Oracle Support for assistance:
TRACE FILE ataccess_j000_8790.trc
--------------------------------------------------------
*** SESSION ID:(133.1713) 2007-11-02 16:00:45.275
Dumping current redo log in thread 1
DUMP OF REDO FROM FILE '/u04/oradata/ACCESS16/ataccess/redo4.log'
Opcodes 11.*
DBAs (file#, block#): (3, 22950)
RBAs: 0x000000.00000000.0000 thru 0xffffffff.ffffffff.ffff
SCNs: scn: 0x0000.00000000 thru scn: 0xffff.ffffffff
Times: creation thru eternity
FILE HEADER:
Compatibility Vsn = 169869568=0xa200100
Db ID=1655231844=0x62a8d564, Db Name='ATACCESS'
Activation ID=1655191140=0x62a83664
Control Seq=4582=0x11e6, File size=204800=0x32000
File Number=4, Blksiz=512, File Type=2 LOG
3. The table affected is SYSMAN.MGMT_METRICS_RAW:
SELECT tablespace_name, segment_type, owner, segment_name
    FROM dba_extents
    WHERE file_id = 3
    and 22950 between block_id AND block_id + blocks - 1;
TABLESPACE_NAME  SEGMENT_TYPE OWNER SEGMENT_NAME
---------------  ------------ ----- ------------
SYSAUX            TABLE       SYSMAN SYS_IOT_OVER_49869
select table_name, iot_name from all_tables where table_name like '%IOT%';
.
..
...
SYS_IOT_OVER_49766 AQ$_MGMT_NOTIFY_QTABLE_G
SYS_IOT_OVER_49869 MGMT_METRICS_RAW  <<<<<<<------------
SYS_IOT_OVER_49872 MGMT_CURRENT_METRICS
CAUSE
This issue was investigated in Bug 6127434 but not resolved due to lack of information.
Abstract: ORA-600[6749] RAISED BY DELETE COMMAND; NO CORRUPTION IDENTIFIED
SOLUTION
The following workaround may resolve the problem temporarily:
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;
May need  to disable trigger: "sysman.raw_metrics_after_insert" before proceeding.  Re-enable after the insert.
4. Re-insert the rows:
SQL> insert into SYSMAN.MGMT_METRICS_RAW
select * from SYSMAN.MGMT_METRICS_RAW_COPY;
SQL> commit;
5. Drop the copy table:
SQL> drop table SYSMAN.MGMT_METRICS_RAW_COPY;

3、Bug 7705591 Corruption with self-referenced row in MSSM tablespace. Wrong Results / OERI[6749] / ORA-8102

This note gives a brief overview of bug 7705591.
 The content was last updated on: 23-JUL-2013
 Click here for details of each of the sections below.
Affects:
Product (Component)  Oracle Server (Rdbms)
Range of versions believed to be affected    Versions >= 9 but BELOW 12.1
Versions confirmed as being affected   
11.2.0.1
11.1.0.7
10.2.0.4
10.2.0.2
Platforms affected   Generic (all / most platforms affected)
 Note that this fix can cause / expose the problem described in Bug:9368502
Fixed:
This issue is fixed in 
12.1.0.1 (Base Release)
11.2.0.2 (Server Patch Set)
11.2.0.1.1 Database Patch Set Update
11.2.0.1 Bundle Patch 4 for Exadata Database
10.2.0.5 (Server Patch Set)
Symptoms:
Related To:
Corruption (Logical)
Error May Occur
Internal Error May Occur (ORA-600)
Wrong Results
ORA-8102 / ORA-1499
ORA-600 [6749]
ORA-600 [qertbFetchByRowID]
ORA-600 [kdtgsp: same block]
ORA-600 [kdsgrp1]
Chained or Migrated Rows
_KDTGSP_RETRIES
Description
A chained row (logical row continued in another row) in a table
can be corrupted where the next row piece (nrid) points to itself.
       
Data corruption resulting from a lost row piece can occur very
intermittently in blocks experiencing high concurrency in MSSM
tablespaces (dba_tablespaces.segment_space_management=MANUAL).
       
It is most likely to happen but not limited to tables with a large
number of columns (e.g. more than 255 columns).
       
Subsequent SQL operations may produce wrong results or different
errors like:
 ORA-600 [6749] by DELETE
 ORA-8102 by UPDATE (if the table has indexes)
 ORA-600 [qertbFetchByRowID]
 ORA-1499 by "analyze table <name> validate structure cascade"
  (logical corruption between index and table as the table is
   returning wrong values for the affected row)
       
Without the fix of Bug 8720802 tools like DBVERIFY / RMAN / ANALYZE
don't detect this logical corruption.
       
Corruption Example from a block dump:
 Row 3 in Block rdba 0xad858746 :
 tab 0, row 3, @0x6e9
 tl: 127 fb: --H-F--- lb: 0x0  cc: 33
 nrid:  0xad858746.3  --> it points to the same row 3
       
The fix for this bug does not repair existent corruptions.
       
       
Workaround
1. Once the corruption is introduced:
       
  Recreate the table skipping the row:
  "Create Table As Select (CTAS) where rowid != <rowid of head piece>"
  or similar can be used
  eg: export with query clause (where rowid != <rowid of head piece>)
      then drop or truncate, import
OR
  Install the enhancement in Bug 8720802 and use dbms_repair to
  Soft Corrupt the affected block and skip it for DML's
       
2. To prevent the issue move the table to ASSM tablespace
   (dba_tablespaces.segment_space_management=AUTO).
       
Note: This fix can lead to the problem described in bug 9368502
       
Please note: The above is a summary description only. Actual symptoms can vary. Matching to any symptoms here does not confirm that you are encountering this problem. For questions about this bug please consult Oracle Support.
References
Bug:7705591 (This link will only work for PUBLISHED bugs)
Note:245840.1 Information on the sections in this article

查看/home/oracle/orabase/admin/ORACLE/bdump/oracle_j000_8737.trc文件,本例由于第二种原因导致数据库报错。使用方法二进行处理后问题得以解决。