在oracle中,可以通过select语句查询数据字典DBA_USERS来查询数据库表空间,语法“select * from dba_tablespaces;”,能返回包含数据库中所有表空间的描述信息。
本教程操作环境:Windows7系统、Oracle 11g版、Dell G3电脑。
Oracle表空间
Oracle表空间是Oracle数据对象和数据存储的容器,Oracle表空间经常和数据文件成对出现,一个表空间可以对应多个数据文件,而一个数据文件只能在一个表空间当中。我们在创建表空间时,就会默认创建一个数据文件,同理,我们创建数据文件时,必须指定一个表空间。
Oracle数据库存储数据是有一个个表空间组成的,一个表空间当中存储着多个数据文件,Oracle的数据(表、索引等数据)存储在数据文件当中,在表空间当中的逻辑单位是段(segment),例如:
我们创建一个索引时,会在指定表空间的创建一个以索引名字命名的索引段,然后在索引段当中创建一个或者多个区(extent),用来存储索引数据,一个区段只能存在于一个数据文件当中。再细分,一个区段当中,可以分为多个区块(block)。区块是Oracle数据库当中最小的空间分配单位。
一个文件在磁盘空间当中存储一般都不是连续的,因此,表空间当中的段是由不同数据文件当中的区段组成的。
oracle查询数据库的表空间
想查看数据库所有默认表空间,可以通过数据字典dba_tablespaces进行查询,可返回包含数据库中所有表空间的描述信息。
select * from dba_tablespaces;
如下图所示:
推荐教程:《Oracle教程》