今天网友遇到ora-600错误,这里把这个ora-600错误的解决方法详细记录一下。
最初报错信息如下:
ora-600-图1
ora-600-图2
图3
这里我们可以看到报错控制文件版本不一致,要求网友备份控制文件,并且修改参数文件使用高版本控制文件启动数据库。
启动后报错ora-600如下图所示:
图4
要求查看alert日志,信息如下:
图5
要求查看跟踪文件内容,如下:
可以看到这里报了一个error:kccpb_sanity_check_2的错误。查看eygle的文档可知这个错误的意思如下:
ORA-00600 kccpb_sanity_check_2错误,这个错误是因为控制文件不一致导致的。出现这个错误时,数据库将无法Mount挂载,影响数据库服务。这个错误,多数是因为存储故障,丢失了数据写。
Oracle对此错误的解释是:
[kccpb_sanity_check_2] indicates that the seq# of the last read block is higher than the seq# of the control file header block. This is indication of the lost write of the header block during commit of the previous cf transaction.
其解释是:kccpb_sanity_check_2 表示最后读取的控制文件块其 seq# 控制序列号大于控制文件头块的 seq# ,这是不应该出现的情况。这说明在最后执行提交的控制文件事务(CF Transaction)中,对于头块的写入丢失了。
这个错误如果只是存在于控制文件上,可以通过重建控制文件来解决,毫无疑问,这是最为简单的处理方式。如果有备份,也可以从备份中恢复完好的控制文件,但是重建通常是很快捷的方式。 以下是一些错误的记录: Fri Jan 16 10:47:45 2009 alter database mountFri Jan 16 10:47:50 2009Errors in file /u01/app/oracle/admin/SZFDB/udump/szfdb_ora_7805.trc:ORA-00600: internal error code, arguments: [kccpb_sanity_check_2], [1449], [1448], [0x000000000], [], [], [], []Fri Jan 16 10:47:51 2009ORA-600 signalled during: alter database mount...Fri Jan 16 10:58:50 2009alter database mountFri Jan 16 10:58:54 2009Errors in file /u01/app/oracle/admin/SZFDB/udump/szfdb_ora_9233.trc:ORA-00600: internal error code, arguments: [kccpb_sanity_check_2], [1449], [1448], [0x000000000], [], [], [], []案例二: Mon Aug 27 19:15:26 2007ORACLE V10.2.0.1.0 - Production vsnsta=0vsnsql=14 vsnxtr=3Windows Server 2003 Version V5.2 Service Pack 2CPU : 2 - type 586, 2 Physical CoresProcess Affinity : 0x00000000Memory (Avail/Total): Ph:2673M/3035M, Ph+PgF:4701M/4926M, VA:1938M/2047MMon Aug 27 19:15:26 2007Starting ORACLE instance (normal)LICENSE_MAX_SESSION = 0LICENSE_SESSIONS_WARNING = 0Picked latch-free SCN scheme 2Mon Aug 27 19:15:37 2007Using LOG_ARCHIVE_DEST_10 parameter default value as USE_DB_RECOVERY_FILE_DESTAutotune of undo retention is turned on.IMODE=BRILAT =18LICENSE_MAX_USERS = 0SYS auditing is disabledksdpec: called for event 13740 prior to event group initializationStarting up ORACLE RDBMS Version: 10.2.0.1.0.System parameters with non-default values: processes = 150 __shared_pool_size = 230686720 __large_pool_size = 4194304 __java_pool_size = 4194304 __streams_pool_size = 0 sga_target = 612368384 control_files = E:\DB_SERVER_GROUP\ORACLE\PRODUCT\10.2.0\ORADATA\ADB\CONTROLFILE\O1_MF_3B37YF0H_.CTL, E:\DB_SERVER_GROUP\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\ADB\CONTROLFILE\O1_MF_3B37YF8S_.CTL db_block_size = 8192 __db_cache_size = 364904448 compatible = 10.2.0.1.0 db_file_multiblock_read_count= 16 db_create_file_dest = E:\DB_Server_Group\Oracle\product\10.2.0\oradata db_recovery_file_dest = E:\DB_Server_Group\Oracle\product\10.2.0\flash_recovery_area db_recovery_file_dest_size= 21474836480 undo_management = AUTO undo_tablespace = UNDOTBS1 remote_login_passwordfile= EXCLUSIVE db_domain = dispatchers = (PROTOCOL=TCP) (SERVICE=adbXDB) job_queue_processes = 10 audit_file_dest = E:\DB_SERVER_GROUP\ORACLE\PRODUCT\10.2.0\ADMIN\ADB\ADUMP background_dump_dest = E:\DB_SERVER_GROUP\ORACLE\PRODUCT\10.2.0\ADMIN\ADB\BDUMP user_dump_dest = E:\DB_SERVER_GROUP\ORACLE\PRODUCT\10.2.0\ADMIN\ADB\UDUMP core_dump_dest = E:\DB_SERVER_GROUP\ORACLE\PRODUCT\10.2.0\ADMIN\ADB\CDUMP db_name = adb open_cursors = 300 pga_aggregate_target = 203423744PSP0 started with pid=3, OS id=2396PMON started with pid=2, OS id=2392MMAN started with pid=4, OS id=2400DBW0 started with pid=5, OS id=2404LGWR started with pid=6, OS id=2408CKPT started with pid=7, OS id=2412SMON started with pid=8, OS id=2416RECO started with pid=9, OS id=2420CJQ0 started with pid=10, OS id=2424MMON started with pid=11, OS id=2432Mon Aug 27 19:15:54 2007starting up 1 dispatcher(s) for network address '(ADDRESS=(PARTIAL=YES)(PROTOCOL=TCP))'...MMNL started with pid=12, OS id=2444Mon Aug 27 19:15:54 2007starting up 1 shared server(s) ...Mon Aug 27 19:16:00 2007alter database mount exclusiveMon Aug 27 19:16:07 2007Errors in file e:\db_server_group\oracle\product\10.2.0\admin\adb\udump\adb_ora_2472.trc:ORA-00600: internal error code, arguments: [kccpb_sanity_check_2], [1558], [1423], [0x0], [], [], [], []Mon Aug 27 19:16:40 2007ORA-600 signalled during: alter database mount exclusive... |