《Oracle存储结构和关系.ppt》由会员分享,可在线阅读,更多相关《Oracle存储结构和关系.ppt(34页珍藏版)》请在三一办公上搜索。
1、,存储结构和关系,目标,完成这一课的学习后,您应该能达到下列目标:描述数据库的逻辑结构 列出段类型及其用途列出控制块空间使用率的关键字从数据字典获取有关存储结构的信息,存储和关系结构,Database,PROD,DISK1/SYS1.dbf,DISK2/USER1.dbf,DISK3/USER2.dbf,DISK1/ROLL1.dbf,DISK1/TEMP.dbf,D.D.TableDataSeg,D.D.IndexIndexSeg,RBSeg,S_DEPTDataSeg,S_EMPDataSeg,TempTempSeg,1 2 1 2 1 2 1 1 2 2 1 FREE 1 1 2 2 1
2、,EXTENTS,S_DEPT(contd)DataSeg,S_EMPFIRST_NAMEIndexIndexSeg,Oracle DATA BLOCKS,RBS1(contd)RBSeg,RBS2(contd)RBSeg,RBS1RBSeg,RBS2RBSeg,SEGMENTS,SYSTEM,USER_DATA,RBS,TEMP,TABLESPACES,DATAFILES,段类型,表,簇,表分区,索引,段类型,按索引组织的表,索引分区,还原段,临时段,段类型,LOB 段,引导程序段,嵌套表,存储子句优先级,Oracle 缺省设置,表空间,段,区的分配与回收,区是表空间内某个段使用的一块空间。
3、当段处于以下情况时分配区:已创建 已扩展 已改变 当段处于以下情况时回收区:已删除 已改变 已截断,已用区和空闲区,数据文件,空闲区,已用区,文件标头,数据库块,I/O 的最小单位 由一个或多个操作系统块组成 在创建表空间时设置 DB_BLOCK_SIZE 指定了缺省块大小,多种块大小支持,数据库既可以按照标准的块大小创建,也可以按照非标准的块大小创建,非标准的块大小最多为四种。块大小可以是介于 2 KB 和 32 KB 之间的 2 的幂值。,标准块大小,在创建数据库时使用 DB_BLOCK_SIZE 参数设置;除非重新创建该数据库,否则无法更改 用于 SYSTEM 和 TEMPORARY 表
4、空间 DB_CACHE_SIZE 指定标准块大小的 DEFAULT 缓冲区高速缓存大小:最小大小=一个粒组(4 MB 或 16 MB)缺省值=48 MB,非标准块大小,使用以下动态参数配置附加高速缓存:DB_2K_CACHE_SIZE 用于 2 KB 块 DB_4K_CACHE_SIZE 用于 4 KB 块 DB_8K_CACHE_SIZE 用于 8 KB 块 DB_16K_CACHE_SIZE 用于 16 KB 块 DB_32K_CACHE_SIZE 用于 32 KB 块 如果 nK 是标准块大小,则不允许使用 DB_nK_CACHE_SIZE 每个高速缓存的最小大小:一个粒组,创建非标准块
5、大小的表空间,CREATE TABLESPACE tbs_1 DATAFILE tbs_1.dbfSIZE 10M BLOCKSIZE 8K;,ALTER SYSTEM SET DB_8K_CACHE_SIZE=10M;,多种块大小的规则,分区对象的所有分区必须位于具有相同块大小的表空间中。所有临时表空间必须采用标准块大小,包括用作缺省临时表空间的永久表空间。按索引组织的表溢出和外部 LOB 段可以存储在块大小与基表不同的表空间中。,数据库块内容,块头,空闲空间,数据,块空间使用参数,INITRANSMAXTRANS,PCTFREEPCTUSED,数据块管理,可以使用两种方法来管理数据块:手动
6、管理自动段空间管理,手动数据块管理,允许使用参数手动配置数据块,例如:PCTFREEPCTUSEDFREELIST在以前的 Oracle 版本中,这是唯一可用的方法,块空间使用率,80%,80%,40%,插入,1,2,3,4,PCTFREE=20PCTUSED=40,自动段空间管理,一种在数据库段内管理空闲空间的方法。对段内空闲和已用空间的跟踪是使用位图完成的(与使用空闲列表相对)。此方法提供了:更方便的管理 更高的空间使用率 改进的并发 INSERT 操作性能,自动段空间管理,位图段包含一个位图,它描述了与段中的可用空间相关的每个块的状态。该映射包含在单独的一组块中,这些块称为“位图块”(B
7、MB)。插入新行时,服务器就会在该映射中搜索具有足够空间的块。当块中的可用空间数量发生变化时,位图中就会反映出它的新状态。,配置自动段空间管理,自动段空间管理仅能在表空间级别启用,用于在本地管理的表空间。创建表空间后,这些规格将应用于在该表空间中创建的所有段。,CREATE TABLESPACE data02DATAFILE/u01/oradata/data02.dbf SIZE 5M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 64KSEGMENT SPACE MANAGEMENT AUTO;,获取存储信息,可以通过查询以下视图来获取有关存储的信息:DBA_EXTENTSDBA_SEGMENTSDBA_TABLESPACESDBA_DATA_FILESDBA_FREE_SPACE,小结,在这一课中,您应该能够掌握:使用表空间执行以下操作:将段分开以便于管理 控制用户的空间分配 按段中存储的信息类型对段进行分类 使用存储子句确定区大小 控制块空间的使用,练习 9 概览,此练习涉及以下主题:了解和获取有关数据库中各种存储结构类型的信息,