有一张图能非常清晰的表示出Oracle物理结构与逻辑结构的区别;如下图:
对上图的解释:
每个数据库都必须由一个或多个表空间组成。(一对多关系)
每个表空间都必须由一个或多个数据文件(data
file)组成。(一对多关系)
每个表空间都可以包含一个或多个段。(一对多关系)
每个数据文件都必须由一个或多个操作系统块(OS bolck)组成。(一对多关系)
每个段都必须由一个或多个区间组成(一对多关系)
每个区间都必须由一个或多个Oracle数据块(Oracle
block)组成。(一对多关系)
每个区间都必须被定位并且只能定位在一个数据文件内,数据文件中的空间可以被分配一个或多个区间(多对一关系)
每个Oracle数据块都必须由一个或多个操作系统数据块组成(一对多关系)
每个数据库都必须由一个或多个表空间组成。(一对多关系)
每个表空间都必须由一个或多个数据文件(data
file)组成。(一对多关系)
每个表空间都可以包含一个或多个段。(一对多关系)
每个数据文件都必须由一个或多个操作系统块(OS bolck)组成。(一对多关系)
每个段都必须由一个或多个区间组成(一对多关系)
每个区间都必须由一个或多个Oracle数据块(Oracle
block)组成。(一对多关系)
每个区间都必须被定位并且只能定位在一个数据文件内,数据文件中的空间可以被分配一个或多个区间(多对一关系)
每个Oracle数据块都必须由一个或多个操作系统数据块组成(一对多关系)
物理结构
1.数据文件(data
file)是保存Oracle数据的操作系统文件。数据库创建阶段会创建许多数据文件,这些数据文件可以保存数据字典、SYSAUX表空间数据以及希望同时创建的其他表空间数据。
2.操作系统数据库(OS
block)是文件系统所使用的最小分配单元。比如:4KB 或 8KB
逻辑结构
1.表空间(tablespace)SYSTEM表空间包含数据字典(描述数据库自身结构、所有对象、用户及角色的的表)。SYSTEM表空间是数据库中数据字典所处的位置。如果没有SYSTEM表空间,那么数据库就无法运作
创建数据库后,需要创建存储数据的其他表空间。
2.段(segment)表空间中被分配给若干个段。段是存储的对象,如一张表或一个索引。注意:视图不存储数据所以不是段
3.区(extent)是为某个段分配的若干邻近数据块的集合。可以在表空间内本地管理区间
4.数据块(block)是数据库内I/O最小单位。数据库需要读取数据时总是无法只读取一条记录,而是必须读取整个数据块。只有在创建表空间时就指定数据块容量,无法修改数据块容量
1.数据文件(data
file)是保存Oracle数据的操作系统文件。数据库创建阶段会创建许多数据文件,这些数据文件可以保存数据字典、SYSAUX表空间数据以及希望同时创建的其他表空间数据。
2.操作系统数据库(OS
block)是文件系统所使用的最小分配单元。比如:4KB 或 8KB
逻辑结构
1.表空间(tablespace)SYSTEM表空间包含数据字典(描述数据库自身结构、所有对象、用户及角色的的表)。SYSTEM表空间是数据库中数据字典所处的位置。如果没有SYSTEM表空间,那么数据库就无法运作
创建数据库后,需要创建存储数据的其他表空间。
2.段(segment)表空间中被分配给若干个段。段是存储的对象,如一张表或一个索引。注意:视图不存储数据所以不是段
3.区(extent)是为某个段分配的若干邻近数据块的集合。可以在表空间内本地管理区间
4.数据块(block)是数据库内I/O最小单位。数据库需要读取数据时总是无法只读取一条记录,而是必须读取整个数据块。只有在创建表空间时就指定数据块容量,无法修改数据块容量