Oracle表空间概念
Oracle表空间之基本概念(首先百度一波)
SQL Server数据库与Oracle数据库之间最大的区别要属表空间设计。Oracle数据库开创性地提出了表空间的设计理念,这为Oracle数据库的高性能做出了不可磨灭的贡献。可以这么说,Oracle中很多优化都是基于表空间的设计理念而实现的。
ORACLE数据库被划分成称作为表空间的逻辑区域——形成ORACLE数据库的逻辑结构。
一个ORACLE数据库能够有一个或多个表空间,而一个表空间则对应着一个或多个物理的数据库文件。表空间是ORACLE数据库恢复的最小单位,容纳着许多数据库实体,如表、视图、索引、聚簇、回退段和临时段等。
每个ORACLE数据库均有SYSTEM表空间,这是数据库创建时自动创建的。
SYSTEM表空间必须总要保持联机,因为其包含着数据库运行所要求的基本信息(关于整个数据库的数据字典、联机求助机制、所有回退段、临时段和自举段、所有的用户数据库实体、其它ORACLE软件产品要求的表)。
一个小型应用的ORACLE数据库通常仅包括SYSTEM表空间,然而一个稍大型应用的ORACLE数据库采用多个表空间会对数据库的使用带来更大的方便。
便于理解,例如:
把oracle数据库看作一个实在房间(实体房间),表空间可以看作这个房间的空间(逻辑空间),是可以自由分配,在这空间里面可以堆放多个箱子(箱子可以看作数据文件),箱子里面再装物件(物件看作表或者其他对象等)。
创建表空间A的同时相当于在这个房间中放了一个箱子,箱子编号为A(创建表空间时同时创建物理数据文件,数据文件可命名),给表空间添加数据文件A02就相当于再在这个房间中放一个编号为A02的箱子,箱子(数据文件)A、A02都属于表空间A。
给用户指定表空间,也就是让你选择把属于这个用户的表放在这个房间的哪个空间(表空间)里面。如果指定了表空间A,则用户向房间放物什的时候,oracle会自动选择放在属于表空间A的箱子(数据文件)里,箱子A或者A02同时使用。
箱子的逻辑空间可以指定,比如1024M、4096M,但是一个箱子(物理数据文件)最大为32G。超过这个箱子的最大使用空间,但还