15.2.2 更新控制文件
当增加、重命名、删除一个数据文件时,Oracle服务器进程(Server Process)会立即更新控制文件以反映数据库结构的这种变化。每次在数据库的结构发生变化后,为了防止数据丢失都要备份控制文件。按照各进程分工不同分别把数据库的更改后信息写入到控制文件中:日志写入进程(LGWR)负责把当前日志序列号记录到控制文件中;校验点进程(CKPT)负责把校验点的信息记录到控制文件中;归档进程负责把归档日志的信息记录到控制文件中。
通常情况下,数据库管理员会使用镜像来管理控制文件,把每个控制文件分布到不同的物理磁盘,发生灾难时,即使其中一个控制文件损坏,数据也不会丢失,也不会使整个数据库陷于瘫痪。
注意 当打开数据库提示“文件比控制文件更新-旧的控制文件”,此时的问题就是数据文件里面的控制文件序列号比控制文件的高,那么这个问题的出现可能是更改控制文件的位置所造成的。补救的方法可以用数据库中的日志文件重新创建一下控制文件。