Oracle9i带来了许多令人兴奋的新特性,操作系统级别上的Oracle的自动治理文件——即Oracle Managed Files(OMF)——就是其中之一。在Oracle9i出现之前,DBA必须在卸载表空间时手工移除数据文件(datafile)并在创建新的表空间之前仔细检查文件的位置。
为了理解OMF是如何工作的,让我们首先定义一个叫着DB_CTEATE_FILE_DEST的新参数。
alter system set db_create_file_dest='/u01/oradata/PROD';
一旦设置好了DB_CTEATE_FILE_DEST参数,我们就可以创建表空间而无须指定文件名。
createtablespace
omf1
datafile size 100m
locally managed;
文件创建之后,Oracle就可以分配和命名这些文件。Oracle OMF使用如下的命名转换惯例。默认的文件大小为100M,并按如下格式命名:
where
%u is a unique 8 digit code
%g is the log file group number
%t is the tablespace name
Controlfilesora_%u.ctl
Redo Log Files ora_%g_%u.log
Datafilesora_%t_%u.dbf
Temporary Datafilesora_%t_%u.tmp
Oracle9i OMF工具还有一个新的警告日志消息(alert log message),它用来告诉我们OMF数据文件何时发生了改动。下面是关于警告日志的一个例子。
Fri Mar 23 01:44:46 2001
CREATE TABLESPACE omf1 DATAFILE SIZE 10M AUTOEXTEND OFF
Fri Mar 23 01:44:47 2001
Created Oracle managed file /databases/ed25/OMF1/ora_omf1_xcp6rg84.dbf
Completed: CREATE TABLESPACE omf1 DATAFILE SIZE 10M AUTOEXTE
Fri Mar 23 01:45:45 2001
drop tablespace omf1
Fri Mar 23 01:45:45 2001
Deleted Oracle managed file /databases/ed25/OMF1/ora_omf_xcp6rg84.dbf
Completed: drop tablespace omf1