是为了当其中一个控制文件受损时可以调用另一个控制文件继续工作。
3. 重做日志文件
重做日志文件即日至文件,主要记录用户对数据库的操作信息。日志文件是数据库系统中最重要的文件之一,通过日志文件可以保证数据库的安全,也可以实现数据库的备份与恢复。一旦日志文件受损,那么数据库可能无法正常运行。
为了确保日志的安全,在实际的应用中,允许对日志文件进行镜像,日志文件与其镜像文件记录同样的日志信息,他们构成一个日志文件组,同一个组中的日志文件最好存放在不同的磁盘中,以便可以保证一个日志文件受损时,还有其他的日志文件提供日志信息。
通过数据字典V$LOG,可以了解系统当前正在使用哪个日志文件组,如下:
SQL>SELECT GROUP#,MEMBERS,STATUS FROM V$LOG;
GROUP# MEMBERS STATUS
-------------------- ----------------
1 1 INACTIVE
2 1 CURRENT
3 1 INACTIVE
4 2 INACTIVE
在上述的结构中,如果STATUS字段的值为CURRENT,则表示当前系统正在使用该字段对应的日志文件组。
当一个日志文件组的空间被占用完之后,Oracle系统会自动转换到另一个日志文件组,不过,管理员可以使用ALTER STSTEM命令惊醒手动切换日志文件。如下:
SQL> ALTER SYSTEM SWITCH LOGFILE;
系统已更改。
再次查询数据字典V$LOG,如下:
SQL> SELECT GROUP#,MEMBERS,STATUS FROMV$LOG;
GROUP# MEMBERS STATUS
---------- ---------- ----------------
1 1 INACTIVE
2 1 ACTIVE
3 1 CURRENT
4 2 INACTIVE
从上述的结果看,系统当前运行的日志文件组已经改变。