windows环境下的oracle 11g在一次关机后,无法正常启动,且无法启动到mount状态,一直提示: ora-03113: end-of-file on communi
windows环境下的oracle 11g在一次关机后,无法正常启动,且无法启动到mount状态,一直提示:
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 windnoresetlogs 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;
完成以上步骤后,重启数据库正常。