第6章节Oracle逻辑存储结构.ppt

  1. 1、本文档共91页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章节Oracle逻辑存储结构

* 作业 2(1)使用SQL命令创建一个本地管理方式下自动分区管理的表空间USERTBS1,其对应的数据文件大小为20MB create tablespace usertbs1 Datafile (2)使用SQL命令创建一个本地管理方式下的表空间USERTBS2,要求每个分区的大小为512KB create tablespace usertbs2 datafile D:\test\usertbs2.dbf size 20M uniform size 512k; D:\test\usertbs1.dbf size 20M; 复习:扩展表空间 为表空间添加新数据文件 ALTER TABLESPACE…ADD DATAFILE 改变已有数据文件的大小 ALTER DATABASE DATAFILE … RESIZE 改变数据文件的扩展方式 AUTOEXTEND ON NEXT… MAXSIZE 在CREATE TABLESPACE… ALTER TABLESPACE ADD… ALTER DATABASE…等语句中使用 (3)修改USERTBS1表空间的大小,将该表空间的数据文件改为自动扩展方式,最大值为100MB alter database datafile D:\test\usertbs1.dbf autoextend on maxsize 100M; 4. 删除表空间 DROP TABLESPACE … INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS SYSTEM和SYSAUX表空间不能删除 一旦表空间删除,里面的数据将永久丢失 如果表空间中的数据正在使用或者含有未提交的事务,则不能删除 一并删除里面的内容和数据文件 删除涉及其他表空间的外键 例23,删除ORCL数据库的ORCLUNDO01表空间及其所有内容,同时删除其所对应的数据文件,以及其他表空间相关的参照完整性约束 DROP TABLESPACE ORCLUNDO01 INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS; (6)表空间信息查询 V$TABLESPACE:从控制文件中获取的表空间名称和编号信息 DBA_TABLESPACES:数据库中所有表空间的信息 DBA_FREE_SPACE:所有表空间中空闲区的信息 DBA_DATA_FILES:数据文件及其所属表空间信息 查询表空间基本信息 SELECT TABLESPACE_NAME, EXTENT_MANAGEMENT, ALLOCATION_TYPE, CONTENTS FROM DBA_TABLESPACES; 查询表空间数据文件信息 SELECT FILE_NAME, BLOCKS, TABLESPACE_NAME FROM DBA_DATA_FILES; 6.3 数据块(BLOCK) 1. 数据块的概念 Oracle数据块是数据库中最小的逻辑存储单元,也是I/O操作的最小单元 由一个或者多个操作系统块组成 分为标准块和非标准块,标准块在数据库创建时DB_BLOCK_SIZE 参数大小设置,不可更改 2 数据库块结构 块头部 空闲区 行数据区 标题 表目录 行目录 插入新的行或更新 保存行数据 3 数据块的管理 对块的管理主要是对块中可用存储空间的管理,确定保留多少空闲空间,避免产生行链接、行迁移。 行链接 插入数据时,如果行的长度大于块的大小,就需要使用多个块存放行信息。 数据 行迁移 数据更新时,如果更新后的数据长度大于块长度,Oracle会将整行的数据从原数据块迁移到新的数据块中。 更新数据 更新数据 原数据 对块的管理分为自动和手动两种。 本地管理方式的表空间,如果段的管理方式设置为AUTO,则采用自动方式管理块。 设为MANUAL为手动管理。通过为段设置PCTFREE和PCTUSED两个参数来控制数据块中空闲空间的使用。 PCTFREE 指定块中必须保留的用于更新的最小空闲空间比例。 当数据块的空闲空间百分率低于PCTFREE时,此数据块被标志为USED,此时在数据块中只可以进行更新,而不能插入。 PCTUSED 指定可以向块中插入数据时,块已使用的最大空间比例。 当数据块使用空间低于PCTUSED时,此块标志为FREE,进行插入 PCTUSED=40 数据 PCTFREE=20 =20% 20% 数据 =40% 数据 40% 数据 INIT

文档评论(0)

junjun37473 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档