控制文件坏掉后, 导致数据库不能正常启动, 没有备份的话, 只能重建控制文件
ctl.sql
STARTUP NOMOUNT;
CREATE CONTROLFILE REUSE DATABASE "testdb" NORESETLOGS NOARCHIVELOG
-- SET STANDBY TO MAXIMIZE PERFORMANCE
MAXLOGFILES 5
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GROUP 1 'D:/oradata/testdb/REDO01.log' SIZE 100M,
GROUP 2 'D:/oradata/testdb/REDO02.log' SIZE 100M,
GROUP 3 'D:/oradata/testdb/REDO03.log' SIZE 100M
-- STANDBY LOGFILE
DATAFILE
'D:/oradata/testdb/SYSTEM01.dbf',
'D:/oradata/testdb/UNDOTBS01.dbf',
'D:/oradata/testdb/USERS01.dbf',
'D:/oradata/testdb/EXAMPLE01.dbf',
'D:/oradata/testdb/SYSAUX01.dbf',
'D:/oradata/testdb/TEMP01.dbf',
'D:/oradata/testdb/test.ORA'
CHARACTER SET ZHS16CGB231280
;
重建过程
c:\> sqlplus / as sysdba
SQL> @ctl.sql;
SQL> recover database;
SQL> alter database open resetlogs;
说明: 在非归档模式下