第三部分 自动文件管理和自动存储管理

第12章 自动文件管理

Oracle 11g的一个突出的特点是增强了文件和存储的自动管理功能,这使得数据库管理员的工作更加轻松。

在创建数据库时,需要指定若干个数据文件、控制文件和重做日志文件的名称、存储位置、大小、是否自动扩展等信息,编写这样的代码对初学者来说,是比较困难的事情。借助于文件的自动管理机制,数据库管理员在创建、维护数据库时,不再需要直接指定这些信息,这些文件由Oracle数据库服务器自动指定,这样可以大大简化代码的编写,减少用户的输入。我们把这样的文件称为Oracle管理的文件(Oracle Managed File,简称为OMF)。

需要注意的是,虽然Oracle 11g的自动管理功能大大简化了数据库管理员的工作,但是以前传统的文件管理方法在Oracle 11g中同样适用。

自动文件管理功能简化了数据库管理员的工作,数据库管理员通过初始化参数来指定文件的位置,Oracle将自动创建、管理这些文件,并在不需要这些文件时将它们删除。文件的存储位置可以是本地的文件系统,也可以是ASM磁盘组。

在管理以下数据库结构时,数据库管理员可以使用自动文件管理功能:

·表空间

·重做日志文件

·控制文件

·归档日志文件

·RMAN备份文件

12.1 如何激活自动文件管理功能

在使用Oracle的自动文件管理时,需要设置以下初始化参数:

·DB_CREATE_FILE_DEST

·DB_CREATE_ONLINE_LOG_DEST_n

·DB_RECOVERY_FILE_DEST

其中初始化参数DB_CREATE_FILE_DEST用来指定一个文件系统目录或者磁盘组,作为表空间中数据文件的默认存储位置。在数据库中创建表空间时,如果没有指定存储位置,这些数据文件将在该目录中创建。这个目录也可以作为重做日志文件和控制文件的默认存储位置,如果没有指定初始化参数DB_CREATE_ONLINE_LOG_DEST_n。

初始化参数DB_CREATE_ONLINE_LOG_DEST_n用来为重做日志文件和控制文件指定默认位置,其中n为整数,变化范围1~5。通过这个参数可以最多为重做日志文件和控制文件指定5个存储位置。

初始化参数DB_RECOVERY_FILE_DEST用来为RMAN备份文件指定默认存储位置。如果没有通过其他方式为归档日志文件指定存储位置,它们也将存储在这个目录中。同时,如果没有设置初始化参数DB_CREATE_ONLINE_LOG_DEST_n,这个目录也作为重做日志文件和控制文件的一个存储位置。

以上三个初始化参数都是动态的。数据库管理员可以在参数文件中指定参数值,也可以在数据库运行过程中,通过命令ALTER SYSTEM或ALTER SESSION来修改它们的值。需要注意的是,当通过以上初始化参数指定文件的存储位置时,Oracle并不自动创建这些目录或磁盘组,数据库管理员需要手工创建相应的目录和磁盘组,并保证oracle用户对它们具有写权限。

如果在参数文件中为以上初始化参数指定了参数值,或者通过命令为它们指定了参数值,那么在数据库中创建相关文件时,可以不指定文件的任何信息,这时创建的文件即为Oracle管理的文件。