刚刚学习Oracle,对Oracle中的表空间概念不是很清楚,数据表怎么是放在表空间(不是数据库)、什么临时表空间、表空间等概念很混淆,哪位大虾能否用途通俗的语言给讲解下,我在网上也查询了很多,虽然讲的很全面,但是很多概念不是很清楚,这里希望能给个通俗的理解

解决方案 »

  1.   

    表空间(Tablespace)——为数据库提供使用空间的逻辑结构,其对应物理结构是数据文件,一个表空间可以包含多个数据文件。
    本地管理表空间(Locally Managed Tablespace简称LMT)——8i以后出现的一种新的表空间的管理模式,通过本地位图来管理表空间的空间使用。
    字典管理表空间(Dictionary-Managed Tablespace简称DMT)——8i以前包括以后都还可以使用的一种表空间管理模式,通过数据字典管理表空间的空间使用。
    段(Segment)——数据库一种逻辑结构,如表段,索引段,回滚段等,段存在于表空间中,并对应一定的存储空间。
    区间,可以简称区(Extent)——段的存储可以分成一个或多个区间,每个区间占用一定数量的数据块(block),在本地管理的表空间中,表空间的Extent就对应段的Extent。
    块(Block)——数据库最小的存储单位,在本文中Block的大小约定为8192字节。
    位(Bit)——本地管理表空间的空间管理单位,一个位可能等于一个区间,也可能多个位组成一个区间。
      

  2.   

    解释数据库、表空间、数据文件、表、数据的最好办法就是想象一个装满东西的柜子。数据库其实就是柜子,柜中的抽屉是表空间,抽屉中的文件夹是数据文件,文件夹中的纸是表,写在纸上的信息就是数据。另外着重理解一下表空间:
    http://baike.baidu.com/view/2973562.htm
      

  3.   

    同时还有一个疑问,表中的数据是写在数据文件.dbf中,定义表本身是放在控制文件.ctl中吗?
      

  4.   


    不是,定义表本身也是放在数据文件中,不过是系统数据文件,system表空间下面的数据文件里面。