新第7章逻辑存储结构.ppt

上传人:豆**** 文档编号:65284712 上传时间:2022-12-04 格式:PPT 页数:28 大小:139.50KB
返回 下载 相关 举报
新第7章逻辑存储结构.ppt_第1页
第1页 / 共28页
新第7章逻辑存储结构.ppt_第2页
第2页 / 共28页
点击查看更多>>
资源描述

《新第7章逻辑存储结构.ppt》由会员分享,可在线阅读,更多相关《新第7章逻辑存储结构.ppt(28页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、Oracle 数据库基础教程新第7章逻辑存储结构 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望Oracle 数据库基础教程本章内容本章内容pOracle的逻辑存储结构p表空间p表空间的管理Oracle 数据库基础教程7.1逻辑存储结构概述逻辑存储结构概述p逻辑结构单元类型n数据块:数据块:BLOCK,数据库中最小的数据库中最小的I/O单元单元n区:区:EXTENT,若干连续的数据块组成,数据库中最小的存储分若干连续的数据块组成,数据库中最小的存储分配单元配单元n

2、段:段:SEGMENT,若干个区形成的段是相同类型数据的存储分配若干个区形成的段是相同类型数据的存储分配区域。区域。n表空间:表空间:TABLESPACE,若干个段形成的表空间是最大的逻辑,若干个段形成的表空间是最大的逻辑存储单元,所有表空间构成一个数据库。存储单元,所有表空间构成一个数据库。数据库对象存放在表空间中,实际是存放在表空间所对应的数据数据库对象存放在表空间中,实际是存放在表空间所对应的数据文件中。文件中。p数据库的存储层次p数据库逻辑存储结构之间的关系Oracle 数据库基础教程DatabaseLogicalPhysicalTablespaceData fileOS blockO

3、racle blockSegmentExtent数据文件依附于表空间存在,一个表空间可以包含几个数据文件,但一个数据文件只能属于一个表空间。Oracle 数据库基础教程表空间表空间数据段数据段 区间区间数据块数据块(段片)(段片)Oracle 数据库基础教程7.2表空间表空间p表空间概述p表空间的管理Oracle 数据库基础教程7.2.1表空间概述表空间概述p表空间概念nOracleOracle数据库在逻辑上可以划分为一系列的逻辑空间,每一数据库在逻辑上可以划分为一系列的逻辑空间,每一个逻辑空间就可以称为一个表空间。个逻辑空间就可以称为一个表空间。n一个数据库由有一个或多个表空间构成,不同表空

4、间用于存一个数据库由有一个或多个表空间构成,不同表空间用于存放不同应用的数据放不同应用的数据n一个表空间对应一个或多个数据文件,一个数据文件只能从一个表空间对应一个或多个数据文件,一个数据文件只能从属于一个表空间。属于一个表空间。n表空间是存储模式对象的容器,一个数据库对象只能存储在表空间是存储模式对象的容器,一个数据库对象只能存储在一个表空间中(分区表和分区索引除外),但可以存储在该一个表空间中(分区表和分区索引除外),但可以存储在该表空间所对应的一个或多个数据文件中。若表空间只有一个表空间所对应的一个或多个数据文件中。若表空间只有一个数据文件,则该表空间中所有对象都保存在该文件中;若表数据

5、文件,则该表空间中所有对象都保存在该文件中;若表空间对应多个数据文件,则表空间中的对象可以分布于不同空间对应多个数据文件,则表空间中的对象可以分布于不同的数据文件中。的数据文件中。Oracle 数据库基础教程p数据库、表空间、数据文件、数据库对象之间的关系 Oracle 数据库基础教程p表空间的分类nSYSTEM SYSTEM 表空间表空间p每个Oracle数据库必须具有一个默认系统表空间,即SYSTEM表空间,该表空间是在创建数据库时自动创建的。pSYSTEM表空间主要用于存储下列信息数据库的数据字典。PL/SQL程序的源代码和解释代码,包括存储过程、函数、包、触发器等。数据库对象的定义,如

6、表、视图、序列、同义词等。p开发者不应把模式对象(如表等)存放在SYSTEM表空间,以免影响数据库的稳定性与执行效率。Oracle 数据库基础教程n非非SYSTEM SYSTEM 表空间表空间p撤消表空间专门进行回退信息的自动管理 p临时表空间:保存SQL语句在执行过程中所产生的临时数据(主要是在排序时产生的临时数据)p用户表空间保存用户数据建议为每个用户创建独立的表空间,减少读取数据文件时产生的I/O冲突Oracle 数据库基础教程p表空间的管理方式n字典管理方式字典管理方式p在字典管理方式下,表空间使用数据字典来管理存储空间的分配,当进行区的分配与回收时,Oracle将对数据字典中的相关基

7、础表进行更新,同时会产生回退信息和重做信息 n本地管理方式本地管理方式p在本地管理方式中,区的分配与管理信息都存储在表空间的数据文件中,而与数据字典无关。表空间在每个数据文件中维护一个“位图”结构,用于记录表空间中的所有区的分配情况,因此区在分配与回收时,Oracle将对数据文件中的位图进行更新,不会产生回退信息或重做信息。p在Oracle 10g数据库中创建表空间时,表空间的默认管理方式为本地管理方式。Oracle 数据库基础教程p表空间管理策略 n在在Oracle 10g数据库中,系统表空间主要用于存储数据字典等数据库中,系统表空间主要用于存储数据字典等Oracle自身对象和数据,并建议将

8、所有的用户对象和数据保存在自身对象和数据,并建议将所有的用户对象和数据保存在其他表空间中,因此需要为数据库创建非系统表空间。其他表空间中,因此需要为数据库创建非系统表空间。n使用多个表空间使用多个表空间p将数据字典与用户数据分离:避免I/O冲突;p将回滚数据与用户数据分离:避免硬盘损坏导致永久性数据丢失;p将表空间的数据文件分散保存到不同的硬盘上:避免多个应用之间互相干扰p能够将表空间设置为脱机状态或联机状态:以便对数据库的一部分进行备份和恢复;p将表空间设置为只读状态:即数据库的一部分设为只读状态;p能够为某种特殊用途专门设置一个表空间:如临时表空间,提高效率p能够更加灵活的为用户设置表空间

9、配额:Oracle 数据库基础教程7.2.2表空间的管理(本地管理方式)表空间的管理(本地管理方式)p表空间的创建p表空间的修改p表空间的删除Oracle 数据库基础教程创建表空间创建表空间 p在创建本地管理方式下的表空间时,首先应该确定表空间的名称、类型、对应的数据文件的名称和位置以及区的分配方式、段的管理方式。p表空间名称不能超过30个字符,必须以字母开头,可以包含字母、数字以及一些特殊字符(如#、_、$)等;p表空间的类型包括普通表空间、临时表空间和撤销表空间;p表空间中区的分配方式包括自动扩展(AUTOALLOCATE)和定制(UNIFORM)两种;p段的管理包括自动管理(AUTO)和

10、手动管理(MANUAL)两种。Oracle 数据库基础教程创建永久表空间创建永久表空间 p创建表空间使用CREATE TABLESPACE语句来实现,该语句包含以下几个子句:nDATAFILE:设定表空间对应的一个或多个数据文件。:设定表空间对应的一个或多个数据文件。nEXTENT MANAGEMENT:指定表空间的管理方式指定表空间的管理方式,取值为取值为LOCAL(默认)或(默认)或DICTIONARY。n设定区的分配方式设定区的分配方式:AUTOALLOCATE(默认)或(默认)或UNIFORnSEGMENT SPACE MANAGEMEN设定段的管理设定段的管理方式方式,其取值为,其取

11、值为MANUAL(默认)或(默认)或AUTO。Oracle 数据库基础教程创建表空间示例创建表空间示例p为ORCL数据库创建一个永久性的表空间,区自动扩展,段采用手动管理方式 CREATE TABLESPACE ORCLTBS1 DATAFILE D:ORACLEORADATAORCLORCLTBS1_1.DBF SIZE 50M;Oracle 数据库基础教程p为ORCL数据库创建一个永久性的表空间,区定制分配,段采用自动管理方式。CREATE TABLESPACE ORCLTBS4 DATAFILE D:ORACLEORADATAORCLORCLTBS4_1.DBF SIZE 50M EXT

12、ENT MANAGEMENT LOCAL UNIFORM SIZE 512K SEGMENT SPACE MANAGEMENT AUTO;Oracle 数据库基础教程创建临时表空间创建临时表空间p使用CREATE TEMPORARY TABLESPACE 语句创建临时表空间,用TEMPFILE子句设置临时数据文件。p需要注意的是临时表空间中区的分配方式只能是UNIFORM,而不能是AUTOALLOCATE,因为这样才能保证不会在临时段中产生过多的存储碎片。p为ORCL数据库创建一个临时表空间。CREATE TEMPORARY TABLESPACE ORCLTEMP1 TEMPFILE D:OR

13、ACLEORADATAORCLORCLTEMP1_1.DBF SIZE 20M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 16M;Oracle 数据库基础教程创建撤销表空间创建撤销表空间p可以使用CREATE UNDO TABLESPACE语句创建撤销表空间,但是在该语句中只能指定DATAFILE和EXTENT MANAGEMENT LOCAL两个子句,而不能指定其他子句。p为ORCL数据库创建一个撤销表空间。CREATE UNDO TABLESPACE ORCLUNDO1 DATAFILE D:ORACLEORADATAORCLORCLUNDO1_1.DBF

14、SIZE 20M;p如果要在数据库使用该撤销表空间,需要设置参数UNDO_MANAGEMENT=AUTO和参数UNDO_TABLESPACE=ORCLUNDO1。Oracle 数据库基础教程修改表空间修改表空间p扩展表空间 n为表空间添加数据文件p可以通过可以通过ALTER TABLESPACEADD DATAFILE语句为永久表语句为永久表空间添加数据文件,通过空间添加数据文件,通过ALTER TABLESPACEADD TEMPFILE语句为临时表空间添加数据文件。语句为临时表空间添加数据文件。p为为ORCL数据库的数据库的ORCLTBS1表空间添加一个大小为表空间添加一个大小为10M的新

15、的数据的新的数据文件。文件。ALTER TABLESPACE ORCLTBS1 ADD DATAFILE D:ORACLEORADATAORCLORCLTBS1_2.DBF SIZE 10M;p为为ORCL数据库的数据库的ORCLTEMP1表空间添加一个大小为表空间添加一个大小为10M的临时数的临时数据文件。据文件。ALTER TABLESPACE ORCLTEMP1 ADD TEMPFILE D:ORACLEORADATAORCLORCLTEMP1_2.DBF SIZE 10M;Oracle 数据库基础教程n改变数据文件的大小p可以通过改变表空间已有数据文件的大小,达到扩展表空间的可以通过改

16、变表空间已有数据文件的大小,达到扩展表空间的目的。目的。p将将ORCL数据库的数据库的ORCLTBS1表空间的数据文件表空间的数据文件ORCLTBS1_2.DBF大小增加到大小增加到20M。ALTER DATABASE DATAFILE D:ORACLEORADATAORCLORCLTBS1_2.DBF RESIZE 20M;Oracle 数据库基础教程n改变数据文件的扩展方式p如果在创建表空间或为表空间增加数据文件时没有指定如果在创建表空间或为表空间增加数据文件时没有指定AUTOEXTEND ON选项,则该文件的大小是固定的。如果选项,则该文件的大小是固定的。如果为数据文件指定了为数据文件指

17、定了AUTOEXTEND ON选项,当数据文件被选项,当数据文件被填满时,数据文件会自动扩展,即表空间被扩展了。填满时,数据文件会自动扩展,即表空间被扩展了。p将将ORCL数据库的数据库的ORCLTBS1表空间的数据文件表空间的数据文件ORCLTBS1_2.DBF设置为自动扩展,每次扩展设置为自动扩展,每次扩展5M空间,空间,文件最大为文件最大为100M。ALTER DATABASE DATAFILE C:ORACLEORADATAORCLORCLTBS1_2.DBF AUTOEXTEND ON NEXT 5M MAXSIZE 100M;Oracle 数据库基础教程p修改表空间可用性n语法语法

18、pALTER TABLESPACE tablespace_name ONLINE|OFFLINEn离线状态的表空间是不能进行数据访问的离线状态的表空间是不能进行数据访问的n表空间备份,数据文件重命名等需要限制用户对表空表空间备份,数据文件重命名等需要限制用户对表空间的访问间的访问n一些表空间必须是在线状态一些表空间必须是在线状态:pSYSTEM表空间p存放在线回退信息的撤销表空间p临时表空间Oracle 数据库基础教程p修改表空间读写性 n语法语法pALTER TABLESPACE tbs_name READ ONLY|READ WRITEp表空间只有满足下列要求才可以转换为只读状态:表空间只

19、有满足下列要求才可以转换为只读状态:表空间处于联机状态;表空间处于联机状态;表空间中不能包含任何活动的回退段;表空间中不能包含任何活动的回退段;如果表空间正在进行联机数据库备份,则不能将它设置为只读状态。如果表空间正在进行联机数据库备份,则不能将它设置为只读状态。因为联机备份结束时,因为联机备份结束时,Oracle更新表空间数据文件的头部信息。更新表空间数据文件的头部信息。Oracle 数据库基础教程p设置默认表空间p创建数据用户时,如果没有使用default tablespace指定表空间,则该用户使用数据库的默认表空间pAlter database default tablespace设置

20、数据库默认表空间p例 create tablespace tabs datafile d:oracleproduct10.1.0oradataoraltabs.dbf size 10M Alter user scott default tablespace tabs;Oracle 数据库基础教程表空间删除表空间删除p语法nDROP TABLESPACE tablespace_namen如果表空间非空,应带有子句:如果表空间非空,应带有子句:pINCLUDING CONTENTSn若要删除操作系统下的数据文件,应带有子句:若要删除操作系统下的数据文件,应带有子句:AND DATAFILESn示例示例DROP TABLESPACE userdata INCLUDING CONTENTS AND DATAFILES;Oracle 数据库基础教程利用利用OEM管理表空间管理表空间p创建表空间p改变表空间p合并表空间中的存储碎片 p为表空间添加数据文件p更改已有数据文件 Oracle 数据库基础教程小结小结p数据库的逻辑结构p表空间和数据数据文件p创建、修改表空间

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com