大佬教程收集整理的这篇文章主要介绍了ORACLE的OMF管理(表空间,日志文件,控制文件),大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
OMF管理
OMF,全称是Oracle_Managed files,即Oracle文件管理,使用OMF可以简化管理员的管理工作,不用指定文件的名字、大小、路径,其名字,大小,路径由Oracle 自动分配。在删除不再使用的日志、数据、控制文件时,OMF也可以自动删除其对应的OS文件。
OMF支持下列文件的自动管理:
日志文件(联机)
控制文件
前提条件:需要为这些类型文件设定相关参数。
一.数据文件的OMF管理
数据文件管理参数:db_create_file_dest
db_create_file_dest:Oracle创建数据文件、临时文件时,在未明确指定路径的情况下的缺省路径,当db_create_online_log_dest_n未指定时,也作为联机日志文件和控制文件的缺省路径。
假定需@R_421_6184@s及数据文件
sql> create tableSPACE s; /*收到了错误信息*/
create tablespace s
* ERROR at line 1:
ORA-02199: missing DATAFILE/TEMPfile clause
sql> show parameter db_create_file /*查看db_create_file_dest参数*/
name TYPE VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest String
--设定db_create_file_dest参数
sql> ALTER SYstem SET db_create_file_dest = '/u01/app/Oracle/oradata/orcl';
System altered.
--设定参数后,创建成功
sql> create tableSPACE s;
tablespace created.
sql> SELECT name FROM v$DATAFILE; /*可以看到ORCL/DATAFILE/o1_mf_s_5vrl1t7h_.dbf是Oralce自动创建的数据文件*/
name
--------------------------------------------------------------------------------
/u01/app/Oracle/oradata/orcl/system01.dbf
/u01/app/Oracle/oradata/orcl/undotbs01.dbf
/u01/app/Oracle/oradata/orcl/sysaux01.dbf
/u01/app/Oracle/oradata/orcl/users01.dbf
/u01/app/Oracle/oradata/orcl/example01.dbf
/u01/app/Oracle/oradata/orcl/test.dbf
/u01/app/Oracle/oradata/orcl/ORCL/DATAFILE/o1_mf_s_5vrl1t7h_.dbf
/*查看物理文件,缺省为R_272_11845@B*/
sql> ho ls -lh /u01/app/Oracle/oradata/orcl/ORCL/DATAFILE/o1_mf_s_5vrl1t7h_.dbf
-rw------- 1 Oracle oinstall 101M Apr 7 16:54 /u01/app/Oracle/oradata/orcl/ORCL/DATAFILE/o1_mf_s_5vrl1t7h_.dbf
sql> create tableSPACE t DATAFILE SIZE 10m; /*也可指定数据文件的大小为MB*/
tablespace created.
sql> SELECT name FROM v$DATAFILE;
name
--------------------------------------------------------------------------------
/u01/app/Oracle/oradata/orcl/system01.dbf
/u01/app/Oracle/oradata/orcl/undotbs01.dbf
/u01/app/Oracle/oradata/orcl/sysaux01.dbf
/u01/app/Oracle/oradata/orcl/users01.dbf
/u01/app/Oracle/oradata/orcl/example01.dbf
/u01/app/Oracle/oradata/orcl/test.dbf
/u01/app/Oracle/oradata/orcl/ORCL/DATAFILE/o1_mf_s_5vrl1t7h_.dbf
/u01/app/Oracle/oradata/orcl/ORCL/DATAFILE/o1_mf_t_5vrlgqtl_.dbf
sql> ho ls -lh /u01/app/Oracle/oradata/orcl/ORCL/DATAFILE/o1_mf_t_5vrlgqtl_.dbf
-rw------- 1 Oracle oinstall 11M Apr 7 17:01 /u01/app/Oracle/oradata/orcl/ORCL/DATAFILE/o1_mf_t_5vrlgqtl_.dbf
--删除表空间时,对于使用了OMF生成的数据文件将随着表空间的删除一起被删除
sql> drop tableSPACE t;
tablespace dropped.
--查看物理文件,已经不存在
sql> ho ls -lh /u01/app/Oracle/oradata/orcl/ORCL/DATAFILE/o1_mf_t_5vrlgqtl_.dbf
ls: /u01/app/Oracle/oradata/orcl/ORCL/DATAFILE/o1_mf_t_5vrlgqtl_.dbf: No such file or directory
--对于未采用OMF来创建的表空间,在删除表空间之后,其数据文件并没有删除,v$DATAFILE视图中被删除
--下面是未使用OMF创建的x表空间及数据文件
sql> create tableSPACE x DATAFILE '/u01/app/Oracle/oradata/orcl/x.dbf' SIZE 10m;
tablespace created.
sql> SELECT name FROM v$DATAFILE;
name
--------------------------------------------------------------------------------
/u01/app/Oracle/oradata/orcl/system01.dbf
/u01/app/Oracle/oradata/orcl/undotbs01.dbf
/u01/app/Oracle/oradata/orcl/sysaux01.dbf
/u01/app/Oracle/oradata/orcl/users01.dbf
/u01/app/Oracle/oradata/orcl/example01.dbf
/u01/app/Oracle/oradata/orcl/test.dbf
/u01/app/Oracle/oradata/orcl/ORCL/DATAFILE/o1_mf_s_5vrl1t7h_.dbf
/u01/app/Oracle/oradata/orcl/x.dbf
sql> drop tableSPACE x;
tablespace dropped.
sql> SELECT name FROM v$DATAFILE; /*视图中已不存在x.dbf的数据文件*/
name
--------------------------------------------------------------------------------
/u01/app/Oracle/oradata/orcl/system01.dbf
/u01/app/Oracle/oradata/orcl/undotbs01.dbf
/u01/app/Oracle/oradata/orcl/sysaux01.dbf
/u01/app/Oracle/oradata/orcl/users01.dbf
/u01/app/Oracle/oradata/orcl/example01.dbf
/u01/app/Oracle/oradata/orcl/test.dbf
/u01/app/Oracle/oradata/orcl/ORCL/DATAFILE/o1_mf_s_5vrl1t7h_.dbf
sql> ho ls /u01/app/Oracle/oradata/orcl/x.dbf /*操作系统中依然存在*/
/u01/app/Oracle/oradata/orcl/x.dbf
--注意:使用OMF的时候会将物理文件删除,应特别注意使用
--使用下面的方法重建x表空间,然后使用including contents and DATAFILEs 彻底删除表空间及物理文件
sql> create tableSPACE X DATAFILE '/u01/app/Oracle/oradata/orcl/x.dbf' REUSE;
tablespace created.
sql> drop tableSPACE x INCLUDING CONTENTS AND DATAFILES;
tablespace dropped.
sql> ho ls /u01/app/Oracle/oradata/orcl/x.dbf
ls: /u01/app/Oracle/oradata/orcl/x.dbf: No such file or directory
总结:使用OMF管理文件的方法
1.使用ALTER SYstem SET db_create_file_dest = '<path>'设置路径
2.查看刚刚的设置SHOW ParaMETER db_create_file_dest;
3.创建表空间及数据文件create tableSPACE tablespace_name
4.单独创建表空间create tableSPACE <> DATAFILE '<path>' SIZE <>;
5.也可以创建undo和temporary tablespace 。CREATE UNDO tableSPACE tablespace_name ;CREATE TEMPORARY tableSPACE tablespace_name;
6.删除表空间drop tableSPACE tablespace_name ;OMF情况下则删除物理文件,等效于未使用OMF创建,使用INCLUDING CONTENTS AND DATAFILES 删除方式
更多详情见请继续阅读下一页的精彩内容: http://www.linuxIDc.com/linux/2013-11/92490p2.htm
相关阅读:
Oracle表空间创建删除,OMF,分区表创建 http://www.linuxIDc.com/linux/2012-01/51695.htm
本篇文章来源于 linux公社网站(www.linuxIDc.com) 原文链接:http://www.linuxIDc.com/linux/2013-11/92490.htm
以上是大佬教程为你收集整理的ORACLE的OMF管理(表空间,日志文件,控制文件)全部内容,希望文章能够帮你解决ORACLE的OMF管理(表空间,日志文件,控制文件)所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。