ORACLE提供两种方法进行控制文件的备份;一是通过PFILE进行多元化备份;二是通过执行 alter database backup controlfile to trace 语句
生成一个可以用文本编辑器编辑的文本文件里面记录了一些语句。通过执行这些语句就可以生成新的控制文件。
通常在执行
alter database backup controlfile to trace;后生成的文件在oracle的
D:/oracle/admin/orcl/udump路径下。打开就可以看到如此的语句
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS ARCHIVELOG
-- SET STANDBY TO MAXIMIZE PERFORMANCE
MAXLOGFILES 50
MAXLOGMEMBERS 5
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GROUP 1 'D:/ORACLE/ORADATA/ORCL/REDO01.LOG' SIZE 100M,
GROUP 2 'D:/ORACLE/ORADATA/ORCL/REDO02.LOG' SIZE 100M,
GROUP 3 (
'D:/ORACLE/ORADATA/ORCL/REDO03.LOG',
'D:/ORACLE/ORADATA/ORCL/REDO05.LOG'
) SIZE 100M
-- STANDBY LOGFILE
DATAFILE
'D:/ORACLE/ORADATA/ORCL/SYSTEM01.DBF',
'D:/ORACLE/ORADATA/ORCL/UNDOTBS01.DBF',
'D:/ORACLE/ORADATA/ORCL/CWMLITE01.DBF',
'D:/ORACLE/ORADATA/ORCL/DRSYS01.DBF',
'D:/ORACLE/ORADATA/ORCL/EXAMPLE01.DBF',
'D:/ORACLE/ORADATA/ORCL/INDX01.DBF',
'D:/ORACLE/ORADATA/ORCL/ODM01.DBF',
'D:/ORACLE/ORADATA/ORCL/TOOLS01.DBF',
'D:/ORACLE/ORADATA/ORCL/USERS01.DBF',
'D:/ORACLE/ORADATA/ORCL/XDB01.DBF',
'D:/ORACLE/ORADATA/ORCL/MEDICARE.DBF',
'D:/ORACLE/ORADATA/ORCL/UNDO2.DBF'
CHARACTER SET ZHS16GBK
;
直接执行后就可以生成新的控制文件但这时候通常要对system表空间进行一下恢复
recover database;
这样就可以了。