OMF是为了简化对数据文件的管理,靠参数DB_CREATE_FILE_DEST实现:

如果定义了DB_CREATE_FILE_DEST,则创建表空间就不需要制定数据文件位置、文件名称,数据文件会按照固定创建到特定位置,在删除表空间的时候对应的数据文件也会删除。

在文件系统不使用OMF时候,那么参数DB_CREATE_FILE_DEST参数为空:

SQL> show parameter db_create_file_dest

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest string

在没有使用OMF的时候,创建表空间必须要制定数据文件的位置,否则会报错:

SQL> create tablespace kel;
create tablespace kel
*
ERROR at line 1:
ORA-02199: missing DATAFILE/TEMPFILE clause

如果此时制定数据文件位置,那么即可创建:

SQL> create tablespace kel datafile '/home/oracle/oradata/kel/kel.dat' size 10M;

Tablespace created.

在没有使用OMF的时候,删除表空间,不会自动删除数据文件

SQL> drop tablespace kel;

Tablespace dropped.

查看数据文件的时候,数据文件没有被删除,依然存在:

[oracle@kel kel]$ ls -l kel.dat
-rw-r----- 1 oracle oinstall 10493952 Jun 29 19:33 kel.dat

要想同时删除掉数据文件,必须使用子句including contents and datafiles 或者使用操作系统的删除命令rm -rf datafilename

SQL> drop tablespace kel including contents and datafiles;

Tablespace dropped.

文件系统使用OMF时候,必须启用参数DB_CREATE_FILE_DEST

启用OMF:

SQL> alter system set db_create_file_dest='/home/oracle/oradata/kel/';

System altered.

SQL> show parameter db_create_file_dest

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest string /home/oracle/oradata/kel/

创建表空间:

SQL> create tablespace kel;

Tablespace created.

查看数据文件命名:

SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
/home/oracle/oradata/kel/system01.dbf
/home/oracle/oradata/kel/undotbs01.dbf
/home/oracle/oradata/kel/sysaux01.dbf
/home/oracle/oradata/kel/users01.dbf
/home/oracle/oradata/kel/KEL/datafile/o1_mf_kel_9v1mj9rv_.dbf

删除表空间时,数据文件会自动删除:

SQL> drop tablespace kel;

Tablespace dropped.

SQL> !ls -l /home/oracle/oradata/kel/KEL/datafile
total 0

oracle文件管理OMF的更多相关文章

  1. Oralce OMF 功能详解

    OMF,全称是Oracle_Managed Files,即Oracle文件管理,使用OMF可以简化管理员的管理工作,不用指定文件的名字.大小.路径,其名字,大小, 路径由oracle 自动分配.在删除 ...

  2. SQL Server 和 Oracle 以及 MySQL 有哪些区别?

    SQL,在这里我理解成SQL Server.三者是目前市场占有率最高(依安装量而非收入)的关系数据库,而且很有代表性.排行第四的DB2(属IBM公司),与Oracle的定位和架构非常相似,就不赘述了. ...

  3. ORACLE VS MYSQL

    ORACLE VS MYSQL 一.历史 1.  Oracle: 中文译作甲骨文,这是一家传奇的公司,有一个传奇的大老板Larry Ellision. Ellision 32岁还一事无成,读了三个大学 ...

  4. mysql、oracle和SQL server数据库的区别

    1.总体对比. SQL,在这里我理解成SQL Server.三者是目前市场占有率最高(依安装量而非收入)的关系数据库,而且很有代表性.排行第四的DB2(属IBM公司),与Oracle的定位和架构非常相 ...

  5. 数据库 --> SQL Server 和 Oracle 以及 MySQL 区别

    SQL Server 和 Oracle 以及 MySQL 区别 三者是目前市场占有率最高(依安装量而非收入)的关系数据库,而且很有代表性.排行第四的DB2(属IBM公司),与Oracle的定位和架构非 ...

  6. 初识oracle重做日志文件

    转自 http://blog.csdn.net/indexman/article/details/7746948 以下易容翻译自oracle dba官方文档,不足之处还望指出. 管理重做日志文件 学习 ...

  7. 检索06 - Oracle MySql SqlSever之间的区别和优缺点

    三者之间区别 历史 1 Oracle:中文译作甲骨文,这是一家传奇的公司,有一个传奇的大老板Larry Ellision. Ellision 32岁还一事无成,读了三个大学,没得到一个学位文凭,换了十 ...

  8. 使用OMF特性

    Oracle 的OMF全称"Oracle managed file",关于这个概念的参考请自行查阅Oracle官方文档"Using Oracle-Managed File ...

  9. Oracle, Mysql及Sql Server的区别

    从事技术工作以来,算是把关系型数据库SQL Server,Oracle, MySQL均用了一遍,本文参考网友的梳理,做一下知识总结. 源头说起 Oracle:中文译作甲骨文,这是一家传奇的公司,有一个 ...

随机推荐

  1. Python中itertools模块

    itertools模块包含创建有效迭代器的函数,可以用各种方式对数据进行循环操作,此模块中的所有函数返回的迭代器都可以与for循环语句以及其他包含迭代器(如生成器和生成器表达式)的函数联合使用. ch ...

  2. 发送消息执行记事本的“另存为”菜单功能(通过WM_COMMAND控制使用别的程序的菜单命令)

    发送消息执行记事本的“另存为”菜单功能procedure TForm1.FormCreate(Sender: TObject);var hNotepad: Cardinal;begin hNotepa ...

  3. OpenCV在Android平台上的应用

    今年8月份, OpenCV 2.3.1发布了. 虽然从2.2开始, OpenCV就号称支持Android平台, 但真正能让OpenCV在Android上运行起来还是在2.3.1版本上. 在这个版本上, ...

  4. AXURE制作APP抽屉式菜单

    1.拖一个dynamic panel到窗体,将State1改名为State_首页: 2.拖2个dynamic panel到State_首页中,分别命名为侧边菜单及首页内容,首页内容盖住侧边菜单: 3. ...

  5. 创建支持复杂脚本Complex Scripts的WINCE6.0系统

    如果要创建支持复杂脚本(Complex Scripts)的系统,我们需要完成下面一系列步骤来确保系统包含所有需要支持的具体区域设置 (locale–specific). 1.     选择intern ...

  6. [HDOJ1698]Just a Hook(线段树,区间更新)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1698 陈题,更新后查询所有叶节点的和.撸一遍模版,形成自己的风格. #include <algo ...

  7. Discuz 7.2 /faq.php SQL注入漏洞

    测试方法: 提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!   Discuz 7.2 /faq.php SQL注入漏洞   http://www.xxx.com/faq.php?a ...

  8. windows ODBC数据源里没有Oracle的驱动程序

    windows ODBC数据源里没有Oracle的驱动程序   直接在“控制面板---管理工具----数据源(ODBC)”   打开数据源配置,发现只有SQLServer的驱动,其他的都没有了.   ...

  9. operator.itemgetter的用法【转】

    operator.itemgetter函数 operator模块提供的itemgetter函数用于获取对象的哪些维的数据,参数为一些序号(即需要获取的数据在对象中的序号),下面看例子. a = [,, ...

  10. 【jQuery】jQuery筛选器规则

    转载自:http://blog.csdn.net/lijinwei112/article/details/6938134 筛选器中加入变量 var ac = "select_" + ...