在oracle中,可以通過select語句查詢數(shù)據(jù)字典DBA_USERS來查詢數(shù)據(jù)庫表空間,語法“select * from dba_tablespaces;”,能返回包含數(shù)據(jù)庫中所有表空間的描述信息。
本教程操作環(huán)境:Windows7系統(tǒng)、Oracle 11g版、Dell G3電腦。
Oracle表空間
Oracle表空間是Oracle數(shù)據(jù)對象和數(shù)據(jù)存儲(chǔ)的容器,Oracle表空間經(jīng)常和數(shù)據(jù)文件成對出現(xiàn),一個(gè)表空間可以對應(yīng)多個(gè)數(shù)據(jù)文件,而一個(gè)數(shù)據(jù)文件只能在一個(gè)表空間當(dāng)中。我們在創(chuàng)建表空間時(shí),就會(huì)默認(rèn)創(chuàng)建一個(gè)數(shù)據(jù)文件,同理,我們創(chuàng)建數(shù)據(jù)文件時(shí),必須指定一個(gè)表空間。
Oracle數(shù)據(jù)庫存儲(chǔ)數(shù)據(jù)是有一個(gè)個(gè)表空間組成的,一個(gè)表空間當(dāng)中存儲(chǔ)著多個(gè)數(shù)據(jù)文件,Oracle的數(shù)據(jù)(表、索引等數(shù)據(jù))存儲(chǔ)在數(shù)據(jù)文件當(dāng)中,在表空間當(dāng)中的邏輯單位是段(segment),例如:
我們創(chuàng)建一個(gè)索引時(shí),會(huì)在指定表空間的創(chuàng)建一個(gè)以索引名字命名的索引段,然后在索引段當(dāng)中創(chuàng)建一個(gè)或者多個(gè)區(qū)(extent),用來存儲(chǔ)索引數(shù)據(jù),一個(gè)區(qū)段只能存在于一個(gè)數(shù)據(jù)文件當(dāng)中。再細(xì)分,一個(gè)區(qū)段當(dāng)中,可以分為多個(gè)區(qū)塊(block)。區(qū)塊是Oracle數(shù)據(jù)庫當(dāng)中最小的空間分配單位。
一個(gè)文件在磁盤空間當(dāng)中存儲(chǔ)一般都不是連續(xù)的,因此,表空間當(dāng)中的段是由不同數(shù)據(jù)文件當(dāng)中的區(qū)段組成的。
oracle查詢數(shù)據(jù)庫的表空間
想查看數(shù)據(jù)庫所有默認(rèn)表空間,可以通過數(shù)據(jù)字典dba_tablespaces進(jìn)行查詢,可返回包含數(shù)據(jù)庫中所有表空間的描述信息。
select * from dba_tablespaces;
如下圖所示:
推薦教程:《Oracle教程》