Oracle数据文件管理
1.数据文件概述
Oracle数据库的数据文件(扩展名为DBF的文件)是用于保存数据库中数据的文件,系统数据、数据字典数据、临时数据、索引数据、应用数据等都物理地存储在数据文件中。用户对数据库中数据的操作,例如数据的插入、删除、修改和查询等,其本质都是对数据文件进行操作。所有数据文件占据空间的大小决定了数据库容量的大小。
在Oracle数据库中,为了提高系统运行效率,用户并不是直接对数据文件进行操作,而是由数据库进程将用户需要的数据先由数据文件读取到数据高速缓冲区缓存,然后再从数据高速缓冲区将数据返回给用户,这样可以提高系统的复用性,减少磁盘I/O。如果用户修改了数据高速缓冲区中的数据,在一定条件下由DBWR进程将脏数据写入数据文件。这种“先内存后外存”的方式极大地提高了系统的运行效率。
在Oracle数据库中,虽然数据文件依附于表空间而存在,但是可以对数据文件进行独立的管理,包括数据文件测创建、数据文件大小的修改、数据文件脱机与联机操作、数据文件名称与位置的改变、数据文件的删除以及数据文件信息查询等。
Oracle数据库中有一种特殊的数据文件,称为临时数据文件,属于数据库的临时表空间。临时数据文件中的内容是临时性的,在一定条件下自动释放。于临时文件相对应,其他数据文件都称为永久性数据文件。
在Oracle数据库中,数据文件是依附于表空间而存在的。一个表空间可以包含一个或多个数据文件,但一个数据文件只能从属于一个表空间。在逻辑上,数据库由表空间构成;在物理上,数据库由数据文件构成。
2.数据文件的管理准则
数据文件的管理准则主要包括合理设置数据文件的数量、数据文件的大小及数据文件的存储位置3个方面。
2.1确定数据文件的数量
2.2确定数据文件大小
创建一个表空间时应该估计数据库对象所需空间的潜在大小,以确定数据文件的大小。在数据库运行过程中,可以根据需要向表空间添加新的数据文件或修改数据文件大小以扩展表空间。确定数据文件大小时,要结合考虑磁盘剩余空间大小及其使用情况。
2.3设置数据文件的存储位置
由于对数据库的操作最终转换为对数据文件的操作,因此在数据库运行过程中对数据文件会进行频繁的读写操作。为了提高I/O效率,消除竞争,应该合理地分配数据文件的存储位置。
1)将需要并行访问的数据文件放置在不同的硬盘上,提高系统读写的效率。
2)将数据文件与控制文件。重做日志文件分散存储于不同的磁盘上,既可以提高数据库的运行效率,又可以减少数据库发生介质故障时的损毁程度。在数据库运行过程中,系统需要并行操作数据文件、控制文件和重做日志文件,将这些物理文件分散于不同的磁盘,可以实现并行操作,提高系统运行效率。
3.创建数据文件
由于在Oracle数据库中,数据文件是依附于表空间而存在的,因此创建数据文件的过程实质上就是向表空间添加数据文件的过程。可以在创建数据库、创建表空间时创建数据文件,也可以在数据库运行与维护过程中为表空间添加数据文件。应该根据表空间要存储的数据库对象大小、磁盘个数及剩余空间等情况,决定数据文件的数量与大小。
4.修改数据文件大小
4.1数据文件的自动扩展
在Oracle数据库中,随着数据库中数据容量的变化,可以调整数据文件的大小。改变数据文件大小的方法有两种,一种是设置数据文件的自动扩展方式,另一种是重新设定数据文件大小。
4.2手动改变数据文件大小
在Oracle数据库中,数据文件创建后可以手工修改数据文件的大小。如果数据库存储空间不足,可以通过增加数据文件大小的方式来解决,而不需要为数据库新建数据文件,这对于数据文件数量已经达到数据库极限数量的情况非常有效。如果数据文件空间有大量剩余,可以采用减小数据文件的方法回收存储空间,避免存储空间的浪费。手动改变数据文件大小的方法对大文件表空间的扩展更为有益,因为不能为大文件表空间添加新的数据文件。
5.改变数据文件的名称与位置
数据文件创建后,可以改变它们的名称与位置。通过重命名或移动数据文件,可以在不改变数据库逻辑存储结构的情况下,对数据库的物理存储结构进行调整。
改变数据文件名称与位置的操作可以在表空间级别进行,也可以在数据库级别进行。在表空间级别进行是指改变数据文件名称与位置的操作只影响当前表空间的应用,不影响其他表空间的应用。在数据库级别进行是在数据库处于加载状态下进行的,此时数据库还没有打开,所有的应用都将停止。
6删除数据文件
可以使用下列语句删除表空间中指定的空的数据文件。
ALTER TABLESPACE......DROP DATAFILE:删除永久表空间中指定的空的数据文件。
ALTER TABLESPACE......DROP TEMPFILE:删除临时表空间中指定的空的临时数据文件。
所谓空的数据文件或空的临时数据文件是指为该文件分配的所有区都被回收。删除数据文件或临时数据文件的同事,将删除控制文件和数据字典中与该数据文件相关信息,同时将删除操作系统中对应的物理文件。
删除数据文件或临时数据文件时受到下列一些约束:
- 数据库必须运行在打开状态。
- 数据文件必须是空的。如果要删除一个非空的数据文件,可用通过删除数据文件所属表空间来实现。
- 不能删除表空间的第一个或唯一的一个数据文件。
- 不能删除从字典管理方式移植到本地管理方式的只读表空间中的数据文件。
- 不能删除SYSTEM表空间中的数据文件。
- 不能删除本地管理表空间中处于脱机状态的数据文件。
Oracle数据文件管理的更多相关文章
- Oracle 数据文件管理
1.手工改变数据文件的大小 SQL>conn / as sysdba SQL>Createtablespace exampletb Datafile 'E:\ examp01.dbf' s ...
- Oracle日志文件管理与查看
Oracle日志文件管理与查看 from:http://hi.baidu.com/shuker/item/25ee611ee960c7426826bb1f 1.查询系统使用的是哪一组日志文件: sel ...
- Oracle11g温习-第九章:表空间和数据文件管理
2013年4月27日 星期六 10:37 1.tablespace 功能:从逻辑上简化数据库的管理 2.tablespace 概述 一个database 对应多个tablespace ,一个table ...
- [20190530]oracle Audit文件管理.txt
[20190530]oracle Audit文件管理.txt --//昨天听课,讲一些oracle相关安全的问题,对方提到audit file的管理,应该引入OS audit,这样目的是仅仅root查 ...
- Oracle数据泵(Data Dump)错误汇集
Oracle数据泵(Data Dump)使用过程当中经常会遇到一些奇奇怪怪的错误案例,下面总结一些自己使用数据泵(Data Dump)过程当中遇到的问题以及解决方法.都是在使用过程中遇到的问题,以后陆 ...
- [转]Oracle数据块体系的详细介绍
数据块概述Oracle对数据库数据文件(datafile)中的存储空间进行管理的单位是数据块(data block).数据块是数据库中最小的(逻辑)数据单位.与数据块对应的,所有数据在操作系统级的最小 ...
- oracle数据导入/导出
Oracle数据导入导出imp/exp 功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份. 大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据 ...
- Oracle数据访问组件ODAC的安装方法
Oracle数据访问组件ODAC(Oracle Data Access Components)顾名思义就是用来访问Oracle数据库的小程序.我们可以编程调用这些组件来实现在没有安装Oracle数据库 ...
- oracle表分区、表分析及oracle数据泵文件导入导出开心版
1.先说oracle表分区是什么吧,这样吧我们来举个桃子,栗子太小,我们就不举了,我们来举个桃子. 你有500万份文件,你要把他存在磁盘上,好嘛,我们就一个文件夹,500万分文件在那儿杵着,我们想找到 ...
随机推荐
- 虚拟机移动后重启网络时提示Device does not seem to be present
Wmware虚拟机硬盘文件位置移动之后,重新引入到Wmware workStation中, 通过命令ifconfig...没有看到eth0..然后重启网卡 #service network resta ...
- 腾讯QQ企业邮箱在ruby on rails 框架中的mailer配置
在编写ruby on rails程序时,我们可能会需要用到发送邮件的程序,如果使用gmail进行smtp发送一般问题不大,但很多企业使用的是腾讯QQ企业邮箱.使用该邮箱进行链接时出现各种错误,goog ...
- JAVA数据源连接方式汇总
最近在研究JAVA的数据源连接方式,学习的时候发现了一位同行写的文章,转载过来,留作记录! 一.问题引入 在java程序中,需要访问数据库,做增删改查等相关操作.如何访问数据库,做数据库的相关操作呢? ...
- linux源代码阅读笔记 fork和execve的区别
1. man exec就可以知到: The exec() family of functions replaces the current process image with a new proce ...
- OneAPM 技术公开课第二讲:开启性能为王的架构时代
「OneAPM 技术公开课」由应用性能管理第一品牌 OneAPM 发起,内容面向 IT 开发和运维人员.云集技术牛人.知名架构师.实践专家共同探讨技术热点.继北京站第一场火爆上演之后,第二场将于9月1 ...
- DIY Ruby CPU 分析——Part I
[编者按]原文作者 Emil Soman,Rubyist,除此之外竟然同时也是艺术家,吉他手,Garden City RubyConf 组织者.本文是DIY Ruby CPU Profiling 的第 ...
- Jedis 操作
http://www.cnblogs.com/liuling/p/2014-4-19-04.html
- SDUT 1220 完美数
完美数 Time Limit: 1000ms Memory limit: 65536K 题目描述 任何一个自然数的约数中都有1和它本身,我们把小于它本身的因数叫做这个自然数的真约数. 如6的所有真 ...
- NOIP 2015提高组复赛
神奇的幻方 题目描述 幻方是一种很神奇的N*N矩阵:它由数字1,2,3,……,N*N构成,且每行.每列及两条对角线上的数字之和都相同. 当N为奇数时,我们可以通过以下方法构建一个幻方: 首先将1写在第 ...
- THUSC 2016游记
又去北京转了一圈,拿到了很不错的协议,非常的开森 day -1 6.2 上午去pku的同学就走了QAQ 然后波哥说下午要考试,考联考题 我一脸无奈的表示我已经提前要到题目而且看了题了 然后波哥就决定给 ...