15.2 初识控制文件

什么是控制文件在15.1节中已经介绍过了,在本节中主要讲解控制文件中包含哪些内容,以及如何更新控制文件。

15.2.1 控制文件的内容

控制文件的存放位置和状态可以从数据字典v$controlfile中查询,查询方法有两种,一种是在SQL*Plus下查询;另一种是在企业管理器中查询。

【示例5】在SQL*Plus中查询控制文件信息

在SQL*Plus中查询控制文件信息,语句如下:


select name,status from v$controlfile;


查询结果如图15.5所示。

15.2 初识控制文件 - 图1

图 15.5 在SQL*Plus中查询控制文件的信息

【示例6】在企业管理器中查询控制文件信息

在OEM(企业管理器)中直接查看控制文件的信息,查询方法是在企业管理器的页面中单击【服务器】,在服务器信息页面的存储栏下选择【控制文件】,显示结果如图15.6所示。在界面上选择【高级】选项,则显示如图15.7所示控制文件的信息。

15.2 初识控制文件 - 图2

图 15.6 在OEM中查询控制文件的一般信息

15.2 初识控制文件 - 图3

图 15.7 在OEM中查询控制文件的详细信息

从上面的查询结果中可以看出数据库的控制文件的扩展名是.ctl。在v$controlfile中status列一般都为空。每一个控制文件中都记录数据库的名称、创建数据库的时间、数据文件的名字及数据库存储的位置、重做日志文件的名字及位置、归档日志的信息、表空间信息、日志历史记录、备份信息、当前的日志序列号、最近检查点的信息等数据库使用信息。这些信息都是在操作数据库时自动写入到控制文件中的,而不是手动写入的。例如,在创建一个数据库时,控制文件中就会自动写入数据库的名称、数据库的创建时间等信息;在增加或者删除表空间时,表空间的信息也会自动写入控制文件中。

控制文件的大小取决于创建数据库时所提供的参数信息,因此当添加数据库中的文件时,控制文件的大小保持不变。参数信息如表15.1所示。

15.2 初识控制文件 - 图4