ORACLE OMF介绍

先看Oracle 官方解释

Oracle managed file (OMF)
A file that is created automatically by the Oracle database  server when it is needed and automatically deleted when it is no longer needed.
 
如何判断你的数据库是否为支持OMF

SQL> show parameter db_create_file_dest;
 
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest                  string

 

如果Value 为空则不支持,有值则支持。
 
如何设置DB 支持?
 
修改初始化参数文件
[oracle@itc-test9 dbs]more initOCM.ora
.......
*.user_dump_dest='/disk/oracle/admin/OCM/udump'
 db_create_file_dest = '/disk/oracle/oradata'

使用 ALTER SYSTEM 命令动态设置

SQL> alter system set db_create_file_dest='/disk/oracle/oradata ;
 
System altered.
 
OMF有些用呢?
我大体总结一个一下就下面几点:
 
1: 创建Tablespace 是不需要写数据文件名称和大小 (default 100M,自动增长,Autoextend 为unlimited)
 
SQL> create tablespace omf;
Tablespace created.
 
Os:

[oracle@itc-test9 datafile]pwd
/disk/oracle/oradata/OCM/datafile
[oracle@itc-test9 datafile]ll
total 102512
-rw-r-----  1 oracle dba 104865792 Apr 29 16:13 o1_mf_omf_4zj30b2p_.dbf
 
创建数据文件属性:
 

Name  /disk/oracle/oradata/OCM/datafile/o1_mf_omf_4zj30b2p_.dbf
Tablespace  OMF
Status  Online
File Size (KB)  102400
AutoExtend  Yes
Increment  100MB
Maximum File Size  32767MB
 
 
2:  向Tablespace 添加文件是只适用add datafile 就可以了,参数如1.

SQL> alter tablespace omf add datafile;
 
Tablespace altered.
 
Os
 
[oracle@itc-test9 datafile]ll
total 205024
-rw-r-----  1 oracle dba 104865792 Apr 29 16:13 o1_mf_omf_4zj30b2p_.dbf
-rw-r-----  1 oracle dba 104865792 Apr 29 16:28 o1_mf_omf_4zj3wj0v_.dbf
 
 
3: 可动态修改数据库创建文件的位置。

SQL> alter system set db_create_file_dest='/disk/oracle/oradata/OCM' ;
 
System altered.
不做 测试了,和前面一样。
 
4: 删除Tablespace 时,后面对应的Datafile 在OS一并删除
 
SQL> drop tablespace omf;
 
Tablespace dropped.

[oracle@itc-test9 datafile]ll
total 0
 
文件一并删除。
==================================================================================

文件创建之后,Oracle就可以分配和命名这些文件。Oracle OMF使用如下的命名转换惯例。默认的文件大小为100M,并按如下格式命名:

where
%u is a unique 8 digit code
%g is the log file group number
%t is the tablespace name

Controlfiles ora_%u.ctl
Redo Log Files ora_%g_%u.log
Datafiles ora_%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

 

 

不过也有人认为OMF对于一个专业的DBA来说是鸡肋,呵呵,没有太大的实际意义。

 

下面来说明一下我认为Oracle OMF 为鸡肋的原因:
 
1: 创建Tablespace 是不需要写数据文件名称和大小
作为一个DBA 在维护DB 时就应该规划好数据文件存放的位置,命名规则和初始大小。
o1_mf_omf_4zj30b2p_.dbf 这样的文件你能看懂和那个Tablespace有关系嘛,更何况生产环境一般都几十个tablesapce 以上。找对应关系也会在日常维护过程中浪费很多时间。
2:向Tablespace 添加文件是只适用add datafile 就可以了
观点如1.
3:动态调整文件存放位置
如果你的数据文件存放位置一直要改的话,还是建议你好好规划一下。
4:连带删除数据文件
   
SQL> drop tablespace noomf including contents and datafiles;
 
Tablespace dropped.
 使用上面的语句一样能安全快捷的删除。
 
 以上几点我认为Oracle OMF 为鸡肋,玩玩可以在生产环境使用就有点儿戏了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值