电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

Oracle表空间与数据文件的管理

43页
  • 卖家[上传人]:luobi****88888
  • 文档编号:133229449
  • 上传时间:2020-05-25
  • 文档格式:DOC
  • 文档大小:670.50KB
  • / 43 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、第六章表空间和数据文件的管理6.1 Oracle引入逻辑结构的目的Oracle数据库管理系统并没有像不少其它数据库管理系统那样直接地操作数据文件,而是引入一组逻辑结构。如图6-1所示。图6-1图6-1的虚线左边为逻辑结构,右边为物理结构。与计算机原理或计算机操作系统中所讲的有些不同,在Oracle数据库中,逻辑结构为Oracle引入的结构,而物理结构为操作系统所拥有的结构。曾有不少学生问过我同样的一个问题,那就是Oracle为什么要引入逻辑结构呢?首先可能是为了增加Oracle的可移植性。Oracle公司声称它的Oracle数据库是与IT平台无关的,即在某一厂家的某个操作系统上开发的Oracle数据库(包括应用程序等)可以几乎不加修改地移植到另一厂家的另外的操作系统上。要做到这一点就不能直接操作数据文件,因为数据文件是跟操作系统相关的。其次可能是为了减少Oracle从业人员学习的难度。因为有了逻辑结构Oracle的从业人员就可以只对逻辑结构进行操作,而在所有的IT平台上逻辑结构的操作都几乎完全相同,至于从逻辑结构到物理结构的映射(转换)是由Oracle数据库管理系统来完成的。6.2 O

      2、racle数据库中存储结构之间的关系其实图6-1类似于一个Oracle数据库的存储结构之间关系的实体关系图。如果读者学过实体关系模型(E-R模型)的话,从图6-1中可以很容易地得到Oracle数据库中存储结构之间的关系。为了帮助那些没有学过E-R模型的读者理解图6-1,也是为了帮助那些学过但已经忘的差不多了的读者恢复一下记忆,在下面对E-R模型和图6-1给出一些简单的解释。在图6-1中,园角型方框为实体,实线表示关系,单线表示一的关系,三条线(鹰爪)表示多的关系。于是可以得到: 每个数据库是由一个或多个表空间所组成(至少一个)。 每个表空间基于一个或多个操作系统的数据文件(至少一个)。 每个表空间中可以存放有零个或多个段(Segment)。 每个段是由一个或多个区段(Extent)所组成。 每个区段是由一个或多个连续的Oracle数据块所组成。 每个Oracle数据块是由一个或多个连续的操作系统数据块所组成。 每个操作系统数据文件是由一个或多个区段(Extent)所组成。 每个操作系统数据文件是由一个或多个操作系统数据块所组成。有关段,区段,和Oracle数据块等我们在接下来的章节中要

      3、详细地介绍。6.3 表空间和数据文件之间的关系及表空间的分类通过前面的讨论可知:Oracle将数据逻辑地存放在表空间里,而物理地存放在数据文件里。表空间(Tablespaces)在任何一个时刻只能属于一个数据库,但是反过来并不成立,因为一个数据库一般都有多个表空间。每个表空间都是由一个或多个操作系统的数据文件所组成,但是一个操作系统的数据文件只能属于一个表空间。表空间可以被进一步划分成一些更小的逻辑存储单位。在一个Oracle数据库中,每个数据文件(Data files)可以而且只能属于一个表空间和一个数据库。数据文件实际上是存储模式对象数据的一个容器/仓库。在一个Oracle数据库中一般有两类表空间,他们是系统(SYSTEM)表空间和非系统(Non-SYSTEM)表空间。系统(SYSTEM)表空间是与数据库一起建立的,在系统表空间中存有数据字典,在系统表空间中还包含了系统还原(回滚)段。虽然在系统表空间中可以存放用户数据,但考虑到Oracle系统的效率和管理上的方便,在系统表空间上不应该存放任何用户数据。非系统(Non-SYSTEM)表空间可以由数据库管理员创建,在非系统表空间中存储

      4、一些单独的段,这些段可以是用户的数据段,索引段,还原段,和临时段等。引入非系统表空间可以方便磁盘空间的管理,也可以更好地控制分配给用户磁盘空间的数量。引入非系统表空间还可以将静态数据和动态数据有效地分开,也可以按照备份的要求将数据分开存放。使用如下的命令创建一个非系统表空间:CREATE TABLESPACE表空间名DATAFILE子句MINIMUM EXTENT 正整数K|MBLOCKSIZE正整数KLOGGING|NOLOGGINGDEFAULT 存储子句ONLINE|OFFLINEPERMANENT|TEMPORARY区段管理子句段管理子句在这里对以上命令中的一些子句和选项给出进一步的解释:表空间名:所要创建的表空间名。DATAFILE子句:组成所要创建的表空间的文件说明。MINIMUM EXTENT:表空间中所使用的每个EXTENT都必须是该参数所指定数的整数倍。BLOCKSIZE:为该表空间说明非标准块的大小。在使用这一子句之前,您必须先设置DB_CACHE_SIZE参数和DB_nK_CACHE_SIZE参数,而且该子句中所说明的正整数一定与DB_nK_CACHE_SIZE参

      5、数的设定相对应。LOGGING: 说明在该表空间中所有数据的变化都将写入重做日志文件中,这也是默认方式。NOLOGGING: 说明在该表空间中所有数据的变化不都写入重做日志文件中,NOLOGGING只影响一些DML和DDL命令。DEFAULT存储子句:说明所有在该表空间中所创建的对象的默认存储参数。OFFLINE:说明该表空间在创建后立即被置为脱机,即不能使用。还有一些其它的子句和选项我们将在后续的章节中陆续地介绍。6.4 表空间中的磁盘空间管理在Oracle8.0和更早的版本中所有表空间中的磁盘空间管理都是由数据字典来管理的。在这种表空间的管理方法中所有的空闲区由数据字典来统一管理。每当区段被分配或收回时,Oracle服务器将修改数据字典中相应的(系统)表。在数据字典(系统)管理的表空间中所有的EXTENTS的管理都是在数据字典中进行的,而且每一个存储在同一个表空间中的段可以具有不同的存储子句。在这种表空间的管理方法中您可以按您的需要修改存储参数,所以存储管理比较灵活但系统的效率较低。还有如果使用这种表空间的管理方法,有时需要合并碎片。由于Oracle8.0对互联网的成功支持和它在其

      6、它方面的卓越表现使得Oracle的市场占有率急速地增加,同时Oracle数据库的规模也开始变的越来越大。这样在一个大型和超大型数据库中就可能有成百乃至上千个表空间。由于每个表空间的管理信息都存在数据字典中,也就是存在系统表空间中。这样系统表空间就有可能成为一个瓶颈从而使数据库系统的效率大大地下降。正是为了克服以上弊端,Oracle公司从它的Oracle8i开始引入了另一种表空间的管理方法,叫做本地管理的表空间。本地管理的表空间其空闲EXTENTS是在表空间中管理的,它是使用位图(Bitmap)来记录空闲EXTENTS,位图中的每一位对应于一块或一组块,而每位的值指示空闲或分配。当一个EXTENT被分配或释放时,Oracle服务器就会修改位图中相应位的值以反映该EXTENT的新的状态。位图存放在表空间所对应的数据文件的文件头中。使用本地管理的表空间减少了数据字典表的竞争,而且当磁盘空间分配或收回时也不会产生回滚(还原),它也不需要合并碎片。在本地管理的表空间中您无法按您的需要来随意地修改存储参数,所以存储管理不像数据字典(系统)管理的表空间那样灵活但系统的效率较高。因为在本地管理的表空间

      7、中,表空间的管理,如磁盘空间的分配与释放等已经不在需要操作数据字典了,所以系统表空间的瓶颈问题得到了很好的解决。因此Oracle公司建议用户创建的表空间应该尽可能地使用本地管理的表空间。在Oracle9i中本地管理的表空间为默认方式,但是在Oracle8i中数据字典(系统)管理的表空间为默认方式。6.5 创建数据字典管理的表空间曾有位著名的学者在一份非常出名的报纸上发表了一篇震撼了整个神州大地的文章,文章的题目是:“中国妇女解放运动的先驱潘金莲”。这篇文章一发表就在社会上引发了激烈的争论,真是“一石击起千层浪”。一位考古学的博士想利用统计学的方法科学地证明潘金莲到底是不是中国妇女解放的先驱。首先他必须将大量的数据分门别类地存入数据库中。他找到了您让您在Oracle数据库方面帮他的忙。您决定首先要为这个项目创建一个名为jinlian(金莲)的表空间。为了平衡I/O,您决定该表空间将基于两个数据文件,它们分别是J:DISK2MOONJINLIAN01.DBF和J:DISK4MOONJINLIAN02.DBF,其大小都为50M(在实际中可能几百)。为了更有效地控制磁盘的存储分配,您决定使用数

      8、据字典管理的表空间。为了防止用户在创建对象时使用的EXTENT过小而产生过多的碎片,您决定最小的EXTENT为50K(MINIMUM EXTENT 50K)。当需要磁盘空间的自动分配时第一次分配为50K(INITIAL 50K),第二次也为50K(NEXT 50K),所分配的最大磁盘空间为100个EXTENTS(MAXEXTENTS 100)。从第三次分配开始按如下的公式进行分配:NEXT * (1+PCTINCREASE/100)(n-2)。其中n为分配的次数。于是你发出了如例6-1的SQL语句来创建名为jinlian(金莲)的表空间。例6-1SQL CREATE TABLESPACE jinlian 2 DATAFILE J:DISK2MOONJINLIAN01.DBF SIZE 50 M, 3 J:DISK4MOONJINLIAN02.DBF SIZE 50 M 4 MINIMUM EXTENT 50K EXTENT MANAGEMENT DICTIONARY 5 DEFAULT STORAGE (INITIAL 50K NEXT 50K MAXEXTENTS 100 PCTIN

      9、CREASE 0);表空间已创建。紧接着为了验证所创建的表空间是不是数据字典管理的,您使用了如例6-4的SQL查询语句。但为了使该语句的显示结果更清晰,您又使用了例6-2和例6-3的SQL*Plus命令对输出进行了格式化。例6-2SQLSET LINE 120例6-3SQL COL TABLESPACE_NAME FOR A15例6-4SQL SELECT tablespace_name, block_size, extent_management, segment_space_management 2 FROM dba_tablespaces;TABLESPACE_NAME BLOCK_SIZE EXTENT_MAN SEGMEN- - - -SYSTEM 4096 DICTIONARY MANUALUNDOTBS 4096 LOCAL MANUALCWMLITE 4096 LOCAL MANUALDRSYS 4096 LOCAL MANUALEXAMPLE 4096 LOCAL MANUALINDX 4096 LOCAL MANUALTEMP 4096 LOCAL MANUALTOOLS 4096 LOCAL MANUALUSERS 409

      《Oracle表空间与数据文件的管理》由会员luobi****88888分享,可在线阅读,更多相关《Oracle表空间与数据文件的管理》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.