您的位置:首页 > 数据库 > Oracle

oracle表空间的概念和组成

2009-02-11 15:04 225 查看

空间是一个容器,其中包含有段。每个段都只属于一个表空间。一个表空间中可能有多个段。一个给定段的所有区段都在与段相关联的表空间中。段绝对不会跨越表
空间边界。表空间本身可以有一个或多个相关的数据文件。表空间中给定段的一个区段完全包含在一个数据文件中。不过,段可以有来自多个不同数据文件的区段。
表空间如图3-3所示。



图3-3 这个表空间包含两个数据文件、3个段和4个区段
图3-3显示了一个名为USER_DATA的表空间。其中包括两个数据文件:user_data01和user_data02。并分配了3个段:T1、T2和I1(可能是两个表和一个索引)。这个表空间中分配了4个区段,每个区段表示为逻辑上连续分配的一组数据库块。段T1包括两个区段,分别在不同的文件中。段T2和I1都各有一个区段。如果这个表空间需要更多的空间,可以调整已经分配给表空间的数据文件的大小,或者可以再增加第三个数据文件。
表空间是Oracle中的逻辑存储容器。作为开发人员,我们会在表空间中创建段,而绝对不会深入到原始的“文件级”。我们可不希望在一个特定的文件中分配区段(当然这也是可以的,但我们一般都不会这么做)。相反,我们会在表空间中创建对象,余下的工作都由Oracle负责。如果将来某个时刻DBA决定在磁盘上移动数据文件,从而使I/O分布得更均匀,这对我们来说没有任何关系,它根本不会影响我们的处理。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: