ora-600[2662] 案例

 

今天有一台server自动重启了,将db 开启时,发现log 信息:
Errors in file /orahome/admin/STCSMES/udump/stcsmes_ora_5247.trc:
ORA-00600: internal error code, arguments: [2662], [2360], [1026629198], [2360], [1026857683], [234881049], [], []
Wed Jul 11 13:12:07 2012
Errors in file /orahome/admin/STCSMES/udump/stcsmes_ora_5247.trc:
ORA-00600: internal error code, arguments: [2662], [2360], [1026629198], [2360], [1026857683], [234881049], [], []
Wed Jul 11 13:12:07 2012
Error 600 happened during db open, shutting down database
USER: terminating instance due to error 600
Instance terminated by USER, pid = 5247
ORA-1092 signalled during: ALTER DATABASE OPEN...
Wed Jul 11 13:17:06 2012

这是由于当前数据块的SCN大于当前的SCN

解决方法是推进当前的scn

利用参数:

*._allow_error_simulation=TRUE

*._minimum_giga_scn=10

然后将数据库启动到mount状态

sql>alter session set events '10015 trace name adjust_scn level 16';

sql>alter database open;

log中显示:


 Thread 1: logseq 34162, block 4, scn 10137149487766
 2 data blocks read, 2 data blocks written, 1 redo blocks read
Current SCN is not changed: _minimum_giga_scn (scn 10737418240) is too small

Errors in file /orahome/admin/STCSMES/udump/stcsmes_ora_5600.trc:
ORA-00600: internal error code, arguments: [2256], [1], [3221225472], [2360], [1026669211], [], [], []
Wed Jul 11 13:28:49 2012
Errors in file /orahome/admin/STCSMES/udump/stcsmes_ora_5600.trc:
ORA-00600: internal error code, arguments: [2662], [2360], [1026669213], [2360], [1026857683], [234881049], [], []
Wed Jul 11 13:28:51 2012
Errors in file /orahome/admin/STCSMES/udump/stcsmes_ora_5600.trc:
ORA-00600: internal error code, arguments: [2662], [2360], [1026669213], [2360], [1026857683], [234881049], [], []
Wed Jul 11 13:28:51 2012

这是因为当前的scn并没有推进到大与块的scn,需要调整adjust_scn level

计算方法:

c*4+d 即:2360*4+1=9441

继续:

sql>startup mount;

sql>alter session set events '10015 trace name adjust_scn level 9441';

sql>alter database open;

这是log中出现ora-600[4194]

Errors in file /orahome/admin/STCSMES/bdump/stcsmes_j000_5936.trc:
ORA-00600: internal error code, arguments: [4194], [20], [18], [], [], [], [], []
Wed Jul 11 13:46:09 2012
DEBUG: Replaying xcb 0x11ea06d88, pmd 0x11972ce08 for failed op 8
Doing block recovery for file 129 block 1380
No block recovery was needed
Wed Jul 11 13:46:10 2012
Errors in file /orahome/admin/STCSMES/bdump/stcsmes_j000_5936.trc:
ORA-00600: internal error code, arguments: [4194], [20], [18], [], [], [], [], []
ORA-00600: internal error code, arguments: [4194], [20], [18], [], [], [], [], []

这个是undo的问题

修改pfile文件

Undo_management=’MANUAL’;

SQL>create spfile from pfile;

SQL>startup;

SQL>create undo tablespace undotbs2 datafile ‘/oradata/STCSMES/undotbs02.dbf’ size 2000M autoextent on next 100M maxsize unlimited;

---注:刚开始建立undo tablelspace 时写成create tablespace导致之后不能使用该新建立的undo tablespace

ORA-30012: undo tablespace 'UNDOTBS1' does not exist or of wrong type

SQL>alter tablespace undotbs1 offline;

SQL>alter system set undo_tablespace=undotbs2 scope=spfile;

SQL>alter system set undo_management=auto scope=spfile;

SQL>shutdown immediate;

sql>alter database open;

alert log中已无报错 不过最好还是对数据库进行expdp/impdp

请使用浏览器的分享功能分享到微信等