图7-34
ORACLE数据库基本结构 1. 逻辑数据结构 ��(1) 段 ��段为表空间中一种指定的逻辑存储结构,在ORACLE数据库中使用4种类型的段: ��①数据段:用来存储数据。每当用户执行建表语句时,ORACLE生成这个数据段。段是仅次于空间表的一个逻辑单位。一个段不能跨越一个表空间,但可以跨越表空间的文件。 ��② 索引段:ORACLE数据库中每个索引用一个索引段存储数据。每当用户发出建立索引(CREATE INDEX)命令时,ORACLE建立索引段。 ��③ 临时段:是ORACLE处理某些操作时需要的临时空间,用来存放处理的中间结果。例如,像SELECT…ORDER BY、SELECT DISTINCT…、SEELECT…、INTERSECT等语句都要占用临时段,语句完成后临时段被释放。 ��④回滚段:每个数据库含有一个或多个回滚段。回滚段中记载每个事务修改前的数据值,当事务异常终止时,ORACLE系统利用回滚段的信息恢复未提交的事务。回滚段还被用来提供数据库中数据的读一致性。 ��(2) 范围 ��段由一组范围组成,这些范围用来存放数据库中的数据。例如,ORACLE为每张表分配一个或多个范围,以形成这张表的数据段。对于每个索引,ORACLE分配一个或多个范围形成一个索引段。 ��范围是数据库系统分配存储空间的一个逻辑单位,一个或多个范围组成一个段。当段内分配的空间被用完时,ORACLE自动为这个段分配新的范围。 ��(3) 数据块 ��范围由若干连续的数据块组成。数据块被称为ORACLE块或页,它是ORACLE数据块文件中存储空间的一个单位。数据块是数据库输入/输出的最小单位。每个ORACLE 块的大小不同于操作系统块的大小,它通常是操作系统块大小的倍数。 2. 表空间和数据文件 ��ORACLE逻辑上存储数据在表空间中,物理上数据存储在与表空间相对应的数据文件中。图7-35说明了这种关系。 图7-35 表空间和数据文件 ��数据库、表空间和数据文件密切相关,又相互区别。一个ORACLE 数据库由一个或多个逻辑存储单元------表空间组成。每个表空间由一个或多个数据文件组成,一个数据文件只能与一个表空间相联系。这里指的数据文件就是操作系统中的文件。 3. 物理数据库结构��ORACLE数据库的物理结构包括数据文件,日志文件和控制文件。 ��(1) 数据文件 ��每个ORACLE数据库有一个或多个物理数据文件,数据文件包含数据库的全部数据。逻辑数据库结构(如表,索引)的数据被物理地存储在数据库指定的数据文件中。数据文件一旦建立,其大小不能改变。 ��(2) 日志文件 ��每个ORACLE数据库有2个或多个日志文件组。日志的重要功能就是把对数据库的全部修改记录在案。日志文件主要用于保护数据库的数据,日志文件中的信息仅被用于系统故障或介质故障时的恢复。 为了防止包括日志文件本身的故障,ORACLE允许多重日志,将两个或多个日志文件的拷贝放在不同的磁盘上,并由ORACLE系统负责维护。 ��(3) 控制文件 ��每个ORACLE数据库有一个控制文件。控制文件包含数据库的物理结构,例如。数据库名、数据文件的名字和位置、数据库建立的日期等。每当ORACLE数据库启动时,控制文件用于标识被打开的数据库和日志文件。 4. 数据字典 ��数据字典是ORACLE数据库的重要组成部分,它是由ORACLE自动生成并维护的一组表和视图。用户只能读或检索这组表和视图,并从中获取数据库的有关信息,例如: ��(1) 数据库中各个对象(如表、视图、索引、聚集、同义词、过程、函数、包等)的定义信息,以及这些对象分配的空间信息等。 ��(2) 列的缺省值及完整性约束信息。 ��(3) ORACLE用户的信息,包括每个用户被授予的角色和权限。 ��用户可以用SELECT语句检索数据字典,例如: ��SELSECT * FROM CAT ��该语句可以查询出用户所建立的表及视图的名字。 |