Oracle 11g ORA-03113故障,重建控制文件

2014-11-24 17:34:09 · 作者: · 浏览: 0

ORA-03113: end-of-file on communication channel


Process ID: 4276


Session ID: 1286Serial number: 2


在D:\app\Administrator\diag\rdbms\wind\wind\trace目录里找到相应号码的trc文件查看,发现如下提示:


Error:kccpb_sanity_check_2


Control filesequence number mismatch!


fhcsq: 168754bhcsq: 168757 cfn 0


所以确认为控制文件问题引起。



首先退出了SQLPLUS,然后把库文件所在的整个目录备份了一份。


然后尝试restore控制文件:


C:\> rman target/


RMAN> shutdownimmediate


RMAN> startupnomount


RMAN> restorecontrolfile from ‘D:\ptc\Windchill_10.0\ocu\oradata\wind\CONTROL03_WIND.CTL’;


完成以上操作后,重新进入SQLPLUS,启动数据库时问题依旧。


可以确认所有控制文件全部出了问题,因库文件等都存在,所以决定重建控制文件:


C:\> sqlplus /nolog


SQL> conn / as sysdba


SQL> shutdown immediate


SQL> startup nomount



SQL> CREATE CONTROLFILE REUSE DATABASE "WIND"NORESETLOGS NOARCHIVELOG


MAXLOGFILES 16


MAXDATAFILES 100


MAXINSTANCES 2


MAXLOGHISTORY 453


LOGFILE


GROUP 1'D:\ptc\Windchill_10.0\ocu\oradata\wind\WINDREDO01.LOG' SIZE 50M,


GROUP 2'D:\ptc\Windchill_10.0\ocu\oradata\wind\WINDREDO02.LOG' SIZE 50M,


GROUP 3'D:\ptc\Windchill_10.0\ocu\oradata\wind\WINDREDO03.LOG' SIZE 50M


DATAFILE


'D:\ptc\Windchill_10.0\ocu\oradata\wind\WINDBLOBS01.DBF',


'D:\ptc\Windchill_10.0\ocu\oradata\wind\WINDINDEX01.DBF',


'D:\ptc\Windchill_10.0\ocu\oradata\wind\WINDSYSAUX01.DBF',


'D:\ptc\Windchill_10.0\ocu\oradata\wind\WINDSYSTEM01.DBF',


'D:\ptc\Windchill_10.0\ocu\oradata\wind\WINDUNDOTBS01.DBF',


'D:\ptc\Windchill_10.0\ocu\oradata\wind\WINDUSERS01.DBF',


'D:\ptc\Windchill_10.0\ocu\oradata\wind\WINDWCAUDIT01.DBF'


CHARACTER SET ZHS16GBK;


SQL> RECOVER DATABASE;


SQL> alter database open;


SQL> alter tablespace temp


add tmpfile'D:\ptc\Windchill_10.0\ocu\oradata\wind\WINDTEMP01.DBF'


SIZE 200M REUSE AUTOEXTEND ON MAXSIZE 5G;


完成以上步骤后,重启数据库正常。