逻辑存储结构是对数据存储结构在逻辑概念上的划分。oracle的逻辑存储结构主要由表空间、段、区间和数据块等概念组成。oracle数据块是由多个表空间组成,表空间又是由多个段组成,段有多个数据区组成,数据区又有多个块组成。数据块是Oracle逻辑存储中的最小的逻辑单位,也是执行数据输入、输出最小存储单位。数据块由块头、表目录、行目录、空余空间和行数据组成。块头、表目录、行目录组合起来称为头部信息区,头部信息区不存放数据,存放整个块的引导信息,起到引导系统读取数据的作用。空余空间和行数据公共构成块的存储区,用于存放真正的数据记录。
数据区是Oracle存储分配的最小单位,oracle就以数据区为单位进行存储控件的扩展。使用数据区的目的是用来保存特定数据类型的数据,也是表中数据增长的基本单位。在Oracle数据库中,分配存储空间就是以数据区为单位的。
段是由一个或多个数据区构成,是一个独立的逻辑存储结构,用于存储表、索引或簇等占用空间的数据对象。一个段只属于一个特定的数据对象,每当创建一个具有独立段的数据对象时,Oracle将为它创建一个段。一个Oracle数据库通常有4中类型的段。(1)数据段(2)索引段(3)回滚段(4)临时段
表空间,是数据库的最大逻辑划分区域,任何数据对象在创建时都必须被指定存储在某个表空间中。表空间(属于逻辑存储结构)与数据文件(属物理存储结构)相对应,一个表空间有一个或多个数据文件组成,一个数据文件只属于一个表空间,Oracle数据的存储空间在逻辑上表现为表空间,而在物理上表现为数据文件。
在创建数据库时,Oracle系统会自动创建多个默认的表空间,这些表空间除了用于管理用户数据的表空间之外,还包括用于管理Oracle系统内部数据(如数据字典)的表空间,Oracle 11g默认创建的吧主要表空间(1)SYSTEM表空间,系统表空间(2)SYSAUX表空间,SYSTEM的辅助表空间(3)UNDO表空间。撤销表空间,用于存储撤销消息的表空间。(4)USERS表空间。用户表空间,Oracle建议用户使用的表空间。可以在这个表空间上创建各种数据对象。Oracle系统的样例用户SCOTT对象就存放在USERS表空间中。除了Oracle系统默认创建的表空间外,用户可以根据应用系统的实际情况及其所要存放的对象类型创建多个自定义的表空间,以区分用户数据与系统数据。此外,不同应用系统的数据应存放在不同的表空间上,而不同表空间的文件应存放在不同的盘上,从而减少I/O冲突,提高应用系统的操作性能。