客户报修客户端无法连接,远程查查看服务器发现数据库归档空间已满,警告日志报大量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 TABLEVALIDATE 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 tablevalidate 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 != " or similar can be used eg: export with query clause (where rowid != ) 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文件,本例由于第二种原因导致数据库报错。使用方法二进行处理后问题得以解决。