4.7.2 控制文件

控制文件是数据库中另一种重要的文件,它的功能是记录数据库的结构和状态。这是一个二进制文件,用户无法查看和修改文件的内容。数据库在启动时需要根据控制文件的内容,查找数据文件并打开它们。在数据库运行的过程中,对数据库结构所做的任何修改都将记录在控制文件中。

在启动数据库服务器时,首先启动实例,然后才能打开数据库。数据库服务器是通过控制文件在实例和数据库之间建立对应关系的。在控制文件中记录了数据文件的路径、重做日志文件的路径、当前日志序列号、SCN等信息。

如果控制文件丢失或损坏,数据库服务器将无法正常运行。由于控制文件的特殊重要性,对它的存储有特殊的要求。在一个数据库中至少需要一个控制文件,Oracle建议至少创建两个控制文件,并将它们分别存储在两个磁盘上,这两个文件互相镜像,如果一个文件损坏,数据库服务器可以使用另外一个文件。在正常情况下,这两个文件的内容是完全一样的,数据库服务器只需要从其中一个文件中读取信息,但是对数据库结构所做的任何修改都必须同时写入两个控制文件。