控制文件记录和维护数据库的物理结构,而且还记录了备份和恢复有关的信息,如果数据库只有一个控制文件,那么当出现介质失败同时控制文件也损坏的时候,将导致无法装载数据库,此时如果没有控制文件备份,那会是一场灾难,所以要多元化控制文件,而且最好分布在不同的磁盘上。
多元化控制文件的相关命令:
查询已存的控制文件:
SQL>select name from v$controlfile;
name
d:/oracle/CONTROL0.CTL
初始化参数control_files:
SQL>alter system set control_files='d:/oracle/CONTROL01.CTL' 'c:/oracle/CONTROL01.CTL' scope=spfile;
关闭数据库:
SQL>shutdown immediate;
复制控制文件:
SQL>host copy d:/oracle/CONTROL01.CTL c:/oracle/CONTROL01.CTL;
启动数据库:
SQL>startup
多元化重做日志:
重做日志记录数据库变化,当执行DML或DDL等操作,LGWR会把重做缓冲区的内容写入重做日志,这些重做日志用于介质失败或例程失败时数据库的恢复,oracle数据库至少要有两个或以上的重做日志组,每一个日志组至少指定有一个重做日志成员。为了防止重做日志组成员出现介质失败而导致数据库无法正常工作,所以要多元化重做日志,而且最好是分布在不同的磁盘上,以防磁盘损坏,这样就算切换到某重做日志组时,该组的一个日志成员损坏了,数据库会转到另一个日志成员继续工作。
多元化重做日志的相关命令:
SQL>column member format a40
SQL>select group#,member from v$logfile;
group# member
1 D:/ORACLE/REDO01.LOG
2 D:/ORACLE/REDO02.LOG
3 D:/ORACLE/REDO03.LOG
SQL>alter database add logfile member
2 'C:/ORACLE/REDO01B.LOG TO GROUP 1
3 'C:/ORACLE/REDO02B.LOG TO GROUP 2
4 'C:/ORACLE/REDO03B.LOG TO GROUP 3;