Oracle 的OMF全称“Oracle managed file”,关于这个概念的参考请自行查阅Oracle官方文档“Using Oracle-Managed Files”(http://download.oracle.com/docs/cd/B19306_01/server.102/b14231 /omf.htm#ADMIN003)。关于这项体现Oracle自动化演进的特性的评价褒贬不一。咱不讨论是否推荐在生产系统中引入这项技术,我们一同看一下这个技术带给我们的乐趣。
1.确认系统是否启用OMF特性
Oracle数据库是否启用OMF特性可以通过查看DB_CREATE_FILE_DEST参数来获得。
当DB_CREATE_FILE_DEST参数值为空时表示未启用OMF功能。

sys@ora10g> show parameter db_create_file_dest
NAME TYPE VALUE
-------------------- -------------------- -------------------
db_create_file_dest string

2.开启OMF特性

通过修改数据库参数使其生效。方法很多,按照个人喜好进行调整(pfile调整方法,alter system调整参数)。

sys@ora10g> alter system set db_create_file_dest='/oracle/oradata';
System altered.
sys@ora10g> show parameter db_create_file_dest
NAME TYPE VALUE
--------------------- -------------------- ------------------
db_create_file_dest string /oracle/oradata

3.使用OMF特性创建表空间

sys@ora10g> create tablespace tbs_secooler;
Tablespace created.

4.数据文件存放位置

此时Oracle会在/oracle/oradata目录下以数据库实例的大写名字(这里是ORA10G)创建一个目录,表空间对应的数据文件会存放在datafile目录下。

sys@ora10g> !ls -l /oracle/oradata/ORA10G/datafile
total 102512
-rw-r----- 1 oracle oinstall 104865792 Jul 15 05:59 o1_mf_tbs_seco_63x8xzvw_.dbf

5.表空间的默认属性

sys@ora10g> select dbms_metadata.get_ddl('TABLESPACE','TBS_SECOOLER') from dual;
DBMS_METADATA.GET_DDL('TABLESPACE','TBS_SECOOLER')
---------------------------------------------------------------------
CREATE TABLESPACE "TBS_SECOOLER" DATAFILE
'/oracle/oradata/ORA10G/datafile/o1_mf_tbs_seco_63x8xzvw_.dbf' SIZE 104857600
AUTOEXTEND ON NEXT 104857600 MAXSIZE 32767M
LOGGING ONLINE PERMANENT BLOCKSIZE 8192
EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO

可见,通过OMF方式创建的表空间默认是100M大小,并且是自动扩展的。

6.添加数据文件

可以简单的通过下面的命令为表空间tbs_secooler添加一个数据文件

sys@ora10g> alter tablespace tbs_secooler add datafile;
Tablespace altered.
sys@ora10g> select dbms_metadata.get_ddl('TABLESPACE','TBS_SECOOLER') from dual;
DBMS_METADATA.GET_DDL('TABLESPACE','TBS_SECOOLER')
---------------------------------------------------------------------
CREATE TABLESPACE "TBS_SECOOLER" DATAFILE
'/oracle/oradata/ORA10G/datafile/o1_mf_tbs_seco_63x8xzvw_.dbf' SIZE 104857600
AUTOEXTEND ON NEXT 104857600 MAXSIZE 32767M,
'/oracle/oradata/ORA10G/datafile/o1_mf_tbs_seco_63x9scb5_.dbf' SIZE 104857600
AUTOEXTEND ON NEXT 104857600 MAXSIZE 32767M
LOGGING ONLINE PERMANENT BLOCKSIZE 8192
EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO
sys@ora10g> !ls -l /oracle/oradata/ORA10G/datafile
total 205024
-rw-r----- 1 oracle oinstall 104865792 Jul 15 05:59 o1_mf_tbs_seco_63x8xzvw_.dbf
-rw-r----- 1 oracle oinstall 104865792 Jul 15 06:14 o1_mf_tbs_seco_63x9scb5_.dbf

7.删除表空间数据文件会随之删除

sys@ora10g> drop tablespace tbs_secooler;
Tablespace dropped.
sys@ora10g> !ls -l /oracle/oradata/ORA10G/datafile
total 0

这个特性曾经一度让人们欢呼雀跃。

8.小结

Oracle的OMF特性很少被大规模的应用。原因很多,个人认为OMF虽然带来了操作上的些许便利,但是它隐藏了一些必要细节,同时表空间名字与数据文件名字很难快速建立起对应关系,为后期的管理带来了极大的不便。大家可以在实际环境酌情使用这项技术。

Good luck.

-- The End --

使用OMF特性的更多相关文章

  1. ASM时的OFM特性对影的建数据文件名称的影响及为SYSTEM表空间的数据文件使用别名

    客户遇到个DG的问题,存储使用的ASM管理,有多个磁盘盘. 在主库创建数据文件,备库自己主动创建的数据文件都在同一磁盘组,而且在主库创建数据文件是指定的是类似**.DBF的名字,到备库也变成了使用AS ...

  2. Oracle Dataguard Standby Redo Log的两个实验

    在Data Guard环境中,Standby Redo Log是一个比较特殊的日志类型.从最新的DG安装指导中,都推荐在Primary和Standby端,都配置Standby Redo Log. 简单 ...

  3. ocp 1Z0-043 61-130题解析

    61. You are working in an online transaction processing (OLTP) environment. You realize that the sal ...

  4. catalog start with + switch database to copy的妙用

    catalog start with + switch database to copy的妙用 环境:RHEL6.4 + Oracle 11.2.0.4 Primary RAC + Standby R ...

  5. 【翻译】--19C Oracle 安装指导

    18C新功能     1.简化的基于镜像的Oracle数据库安装     从18C开始,Oracle可以作为镜像文件来下载和安装,必须解压缩镜像文件到ORACLE_HOME目录,然后执行runInst ...

  6. 探索ORACLE之ASM概念(完整版)

    探索ORACLE之ASM概念(完整版) 本文出自https://www.jb51.net/article/43527.htm ASM是Oracle 10g R2中为了简化Oracle数据库的管理而推出 ...

  7. SQL Server优化器特性-隐式谓词

    我们都知道,一条SQL语句提交给优化器会产生相应的执行计划然后执行输出结果,但他的执行计划是如何产生的呢?这可能是关系型数据库最复杂的部分了.这里我为大家介绍一个有关SQL Server优化器的特性- ...

  8. 【12c】12c RMAN新特性之通过网络远程恢复数据库(RESTORE/Recover from Service)

    [12c]12c RMAN新特性之通过网络远程恢复数据库(RESTORE/Recover from Service) 通过网络远程恢复数据库(Restore/Recover from Service) ...

  9. Oracle 11gR2 RAC 新特性说明

    最近接触了一下Oracle 11g R2 的RAC,发现变化很大. 所以在自己动手做实验之前还是先研究下它的新特性比较好. 一.    官网介绍 先看一下Oracle 的官网文档里对RAC 新特性的一 ...

随机推荐

  1. openlayers之天地图为底图 叠加其他底图 加载遇到的各种报错

    今天以前使用天地图为底图时,map里source的定义:http://t3.tianditu.com~~~ 今天突然报跨域的错误,原有地址访问受限,可是key值是有的 最后发现就是前半段的原因 将前半 ...

  2. WPF中关于合并资源字典

    一.本项目中 <ResourceDictionary> <ResourceDictionary.MergedDictionaries> <!--<ResourceD ...

  3. 第十九篇 jQuery初步学习

    jQuery 初步学习   jQuery可以理解为是一种脚本,需要到网上下载,它是一个文件,后缀当然是js的文件,它里面封装了很多函数方法,我们直接调用即可,就比方说,我们用JS,写一个显示与隐藏,通 ...

  4. Docker搭建Gitlab服务器

    1.使用docker搜索gitlab镜像 docker search gitlab 2.下载镜像: docker pull docker.io/gitlab/gitlab-ce 3.查看docker镜 ...

  5. tensorflow源码分析

    前言: 一般来说,如果安装tensorflow主要目的是为了调试些小程序的话,只要下载相应的包,然后,直接使用pip install tensorflow即可. 但有时我们需要将Tensorflow的 ...

  6. 【hdu 6067】Big Integer

    题意 给你一个 \((k-1)\times (n+1)\) 的 \(01\) 矩阵 \(g\),求满足下列条件的 \(k(k\le 10)\) 进制整数的数量: 1. 不超过 \(n\) 位且数的最高 ...

  7. [转帖]微軟将从 .NET 4 以后的版本弃用 System.Data.OracleClient

    转帖--微軟将从 .NET 4 以后的版本弃用 System.Data.OracleClient Posted on -- : eaglet 阅读() 评论() 编辑 收藏 原贴 http://www ...

  8. 什么是弹性盒子 ( Flex Box)?

    ㈠什么是弹性盒子? 弹性盒子是 CSS3 的一种新的布局模式.引入弹性盒布局模型的目的是提供一种更加有效的方式来对一个容器中的子元素进行排列.对齐和分配空白空间. 弹性盒子由弹性容器(Flex con ...

  9. Linux 下的tmpfs文件系统(/dev/shm)

    介绍 /dev/shm/是一个使用就是tmpfs文件系统的设备,其实就是一个特殊的文件系统.redhat中默认大小为物理内存的一半,使用时不用mkfs格式化. tmpfs是Linux/Unix系统上的 ...

  10. (转)CSS定义字体间距 字体行与行间距

    源网址:http://www.cnblogs.com/jian1982/archive/2010/07/03/1770349.html CSS定义字体行间距 line-height:xxpx; CSS ...