Oracle 表空間的概念

2022-07-26 06:18:11 字數 1966 閱讀 9626

表空間

在資料庫系統中,儲存空間是較為重要的資源,合理利用空間,不但能節省空間,還可以提高系統的效率和工作效能。 oracle 可以存放海量資料,所有資料都在資料檔案中儲存。而資料檔案大小受作業系統限制,並且過大的資料檔案對資料的訪問效能影響非常大。同時oracle 是跨平台的資料庫, oracle 資料可以輕鬆的在不同平台上移植,那麼如何才能提供統一訪問格式的大容量呢? oracle 採用表空間來解決。

表空間只是乙個邏輯概念,若干作業系統檔案(檔案可以不是很大)可以組成乙個表空間。表空間統一管理空間中的資料檔案,乙個資料檔案只能屬於乙個表空間。乙個資料庫空間由若干個表空間組成。如圖所示:

oracle 中所有的資料(包括系統資料),全部儲存在表空間中,常見的表空間有:

ø系統表空間:存放系統資料,系統表空間在資料庫建立時建立。表空間名稱為

system。存放資料字典檢視以及資料庫結構等重要系統資料資訊,在執行時如

果 system 空間不足,對資料庫影響會比較大,雖然在系統執行過程中可以通過命

令擴充空間,但還是會影響資料庫的效能,因此有必要在建立資料庫時適當的把數

據檔案設定大一些。

øtmep 表空間:臨時表空間,安裝資料庫時建立,可以在執行時通過命令增大臨時

表空間。臨時表空間的重要作用是資料排序。比如當使用者執行了諸如

order by 等

命令後,伺服器需要對所選取資料進行排序,如果資料很大,記憶體的排序區可能裝

不下太大資料,就需要把一些中間的排序結果寫在硬碟的臨時表空間中。

ø使用者表自定義空間:使用者可以通過 create tablespace 命令建立表空間

建立表空間

--建立表空間 linux centos6.9

--建立乙個表空間,包含兩個資料檔案大小分別是 10mb, 5mb,要求 extent 的大小統一為 1m

createtablespacenod_tablespace

datafile'/home/oracle/tablespace/a.ora'size10m,

'/home/oracle/tablespace/b.ora'size5m

extentmanagementlocal

uniformsize1m

windows版本建立表空間

請注意:只有管理員才可以增加表空間

當表空間不足的時候可以用alter tablespace命令向表空間中追加資料檔案並擴充表空間

修改表空間大小

--擴充表空間

altertablespacenod_tablespace

adddatafile'/home/oracle/tablespace/c.ora'size100m

--檢視表空間情況

selectsum(bytes) / (1024* 1024) asfree_space, tablespace_name

fromdba_free_space

groupbytablespace_name;

建立使用者時可以為使用者指定某一表空間,那麼該使用者下所有資料庫物件預設都儲存在該空間中

指定使用者的表空間為

建立表指定表空間

createtablet2(idint)

tablespacenod_tablespace

表和索引一旦建立,表空間無法進行二次修改

oracle的表空間的相關概念

oracle 中邏輯結構包括表空間 段 區和塊。說明一下資料庫由表空間構成,而表空間又是由段構成,而段又是由區構成,而區又是由oracle 塊構成的這樣的一種結構,可以提高資料庫的效率。如下圖 介紹表空間用於從邏輯上組織資料庫的資料,資料庫邏輯上是由乙個或是多個表空間組成的。通過表空間可以達到一下作...

oracle表空間和資料字典的概念

表空間 sql server資料庫與oracle資料庫之間最大的區別要屬表空間設計。oracle資料庫開創性地提出了表空間的設計理念,這為oracle資料庫的高效能做出了不可磨滅的貢獻。可以這麼說,oracle中很多優化都是基於表空間的設計理念而實現的。oracle資料庫被劃分成稱作為表空間的邏輯區...

Oracle表空間 表

表 table 表空間是對儲存系統檔案 使用者資訊等資料的乙個空間。oracle表空間屬於oracle中的儲存結構,是由資料檔案組成,乙個資料庫例項可以有n個表空間,每個資料庫至少有乙個表空間 system表空間 乙個表空間下可以有n張表。可以通過表空間來實現對oracle的調優 oracle資料庫...