1 日志:1.1 Alert日志Tue May 22 10:04:14 2012 Errors in file /data/oracle9/admin/DEVDB/bdump/jdb01_smon_29221.trc: ORA-00600: internal error code, arguments: [4137], [], [], [], [], [], [], [] Tue May 22 10:04:15 2012 ORACLE Instance jdb01 (pid = 6) - Error 600 encountered while recovering transaction (16, 29). Tue May 22 10:04:15 2012 Errors in file /data/oracle9/admin/DEVDB/bdump/jdb01_smon_29221.trc: ORA-00600: internal error code, arguments: [4137], [], [], [], [], [], [], [] SMON: mark undo segment 16 as needs recovery Tue May 22 10:07:29 2012 drop rollback segment "_SYSSMU16$" Tue May 22 10:07:29 2012 ORA-30025 signalled during: drop rollback segment "_SYSSMU16$"... Tue May 22 10:09:23 2012 SMON: about to recover undo segment 16 Tue May 22 10:09:38 2012 Errors in file /data/oracle9/admin/DEVDB/bdump/jdb01_smon_29221.trc: ORA-00600: internal error code, arguments: [4137], [], [], [], [], [], [], [] ORACLE Instance jdb01 (pid = 6) - Error 600 encountered while recovering transaction (16, 29). Tue May 22 10:09:39 2012 Errors in file /data/oracle9/admin/DEVDB/bdump/jdb01_smon_29221.trc: ORA-00600: internal error code, arguments: [4137], [], [], [], [], [], [], [] SMON: mark undo segment 16 as needs recovery 2 解决过程:通过SELECT * from dba_rollback_segs或者上述的描述来看_SYSSMU16$有坏块,而且该回滚表空间并发当前数据库使用的回滚表空间,但这个回滚段的status是“NEEDS RECOVERY“,为确保万无一失,先把数据备份出来,然后把这个表空间drop掉。备份在这里不在描述,下面主要是从drop掉这个undo tablespace开始描述。 2.1 删除回滚表空间SQL> drop tablespace UNDOTBS1 including contents; 不让删除,考虑逐个删除回滚段, SQL> drop rollback segment "_SYSSMU16$"; 看来直接drop掉不行,需设置_corrupted_rollback_segments的隐含参数。 2.2 设置_corrupted_rollback_segments2.2.1 创建init.oraSQL> create pfile from spfile;
File created. 2.2.2 设置隐含参数*.timed_statistics=TRUE *.undo_management='auto' *.undo_retention=10800 *.undo_tablespace='undo02' *.use_indirect_data_buffers=true *._CORRUPTED_ROLLBACK_SEGMENTS=(_SYSSMU16$) 2.2.3 改用init.ora启动,并删除回滚表空间SQL> shutdown immediate; Database dismounted. ORACLE instance shut down. SQL> startup mount pfile='/data/oracle9/product/9.2.0/dbs/initjdb01.ora'; ORACLE instance started. Total System Global Area 3738768904 bytes Fixed Size 452104 bytes Variable Size 587202560 bytes Database Buffers 3145728000 bytes Redo Buffers 5386240 bytes Database mounted. SQL> alter database open; Database altered. SQL> drop tablespace UNDOTBS1 including contents and datafiles; Tablespace dropped. 2.3 重新用spfile启动数据库SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. SQL> startup; ORACLE instance started. Total System Global Area 3738768904 bytes Fixed Size 452104 bytes Variable Size 587202560 bytes Database Buffers 3145728000 bytes Redo Buffers 5386240 bytes Database mounted. 2.4 查看警告日志是否正常Tue May 22 10:18:12 2012 SMON: enabling cache recovery Tue May 22 10:18:12 2012 Undo Segment 1 Onlined Undo Segment 2 Onlined Undo Segment 3 Onlined Undo Segment 4 Onlined Undo Segment 5 Onlined Undo Segment 6 Onlined Undo Segment 7 Onlined Undo Segment 8 Onlined Undo Segment 9 Onlined Undo Segment 10 Onlined Successfully onlined Undo Tablespace 98. Tue May 22 10:18:12 2012 SMON: enabling tx recovery Tue May 22 10:18:12 2012 Database Characterset is ZHS16GBK Completed: ALTER DATABASE OPEN
|
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/751051/viewspace-731723/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/751051/viewspace-731723/