管理表空間和資料檔案

2021-09-07 15:12:43 字數 3219 閱讀 3881

完成這一課的學習後,您應該能達到下列目標:

• 確定表空間和資料檔案的用途

• 建立表空間

• 管理表空間

• 使用 「oracle 管理檔案」 (oracle managed files, omf)

建立和管理表空間

• 表空間:

– 某一時刻只能屬於乙個資料庫

– 由乙個或多個資料檔案組成

– 可進一步劃分為邏輯儲存單元

• 資料檔案:

– 只能屬於乙個表空間和乙個 資料庫

– 是方案物件資料的資料檔案庫

• oracle 資料庫由乙個或多個稱為表空間的邏輯儲存單元組成,表空間作為乙個整體 儲存資料庫中的所有資料。

• oracle 資料庫內的每個表空間由乙個或多個稱為資料檔案的檔案組成,這些資料文 件是與 oracle 執行所在的作業系統一致的物理結構。

• 資料庫的所有資料都儲存在資料檔案中,資料庫的每個表空間都由這些資料檔案組 成。例如,最簡單的 oracle 資料庫只有乙個表空間和乙個資料檔案。而另乙個資料 庫可具有三個表空間,每個表空間由兩個資料檔案組成(共有六個資料檔案)。

• system 表空間

– 隨資料庫建立

– 包含資料字典

– 包含 system 還原段

• 非 system 表空間

– 用於分開儲存段

– 易於空間管理

– 控制分配給使用者的空間量

system 和所有其它表空間。

system 表空間:

• 隨資料庫建立

• 所有資料庫均需要

• 包括資料字典(內含儲存程式單元)

• 包含 system 還原段

• 應不包括使用者資料,儘管允許這樣做

非 system 表空間:

• 支援更靈活地管理資料庫

• 將還原段、臨時段、應用程式資料段和應用程式索引段分開

• 根據備份要求將資料分開

• 分開動態和靜態資料

• 控制分配給使用者物件的空間量

1

create tablespace userdata datafile '/u01/oradata/userdata01.dbf' size 100m autoextend on

next 5m maxsize 200m;

2---使用以下命令建立表空間:

3create tablespace

1:命令建立表空間:

1

--建立表空間

2--使用 create tablespace 命令可建立表空間:

3create tablespace tablespace

4 [datafile clause]

5 [minimum extent integer[k|m]]

6 [blocksize integer [k]]

7 [logging|nologging]

8 [default storage_clause ]

9 [online|offline]

10 [permanent|temporary]

11 [extent_management_clause]

12 [segment_management_clause]

13/*

14 建立表空間

15 create tablespace userdata datafile '/u01/oradata/userdata01.dbf' size 100m autoextend on next 5m maxsize 200m;

16 使用以下命令建立表空間:

17 create tablespace

1819 tablespace:是要建立的表空間的名稱

20 datafile:指定組成表空間的乙個或多個資料檔案

21 minimum extent:確保表空間內每個占用區的大小是整數 (integer) 的倍數。使用 k 或 m 以千位元組或兆位元組為單位指定該大小。

22 blocksize:blocksize 指定表空間的非標準塊大小。要指定該子句,必須具有db_cache_size,並至少設定乙個 db_nk_cache_size 引數,在該子句中指定的整數(integer) 必須與乙個 db_nk_cache_size 引數設定相對應。

23 logging:指定在預設情況下,表空間內的所有表、索引和分割槽的所有更改都寫入重做日誌檔案。logging 為預設設定。

24 nologging:指定在預設情況下,表空間內的所有表、索引和分割槽的所有更改都不寫入重做日誌檔案。nologging 只影響某些 dml 和 ddl 命令,如直接載入。

25 default:default 指定表空間內建立的所有物件的預設儲存引數。

26 offline:指定表空間從建立後就不可用。

27 permanent:指定表空間可用於保留永久物件。

28 temporary:指定表空間僅用於保留臨時物件,如:由 order by 子句引起的隱式排序所使用的段。不能指定 extent management local 或 blocksize 子句。

29 extent_management_clause:該子句指定如何管理表空間內的區。該子句在本課的後續部分中討論。

30 segment_management_clause:這只與永久的、且在本地管理的表空間相關。通過它可指定 oracle 是否應使用空閒列表或位圖來跟蹤表空間段中的已占用空間和空閒空間。

31 datafile_clause:== filename [size integer[k|m] [reuse][ autoextend_clause ]

32 filename:是表空間中的資料檔案的名稱。

33 size:指定檔案大小。使用 k 或 m 以千位元組或兆位元組為單位指定大小。

34 reuse:允許 oracle 伺服器重新使用現有檔案。

35 autoextend_clause:該子句啟用或禁用資料檔案的自動擴充套件。

3738

39 maxsize:指定資料檔案可以自動擴充套件到的最大磁碟空間。

40 unlimited:指定可分配給資料檔案或 tempfile 的磁碟空間是不受限制的。

4142 */

管理表空間和資料檔案

完成這一課的學習後,您應該能達到下列目標 確定表空間和資料檔案的用途 建立表空間 管理表空間 使用 oracle 管理檔案 oracle managed files,omf 建立和管理表空間 表空間 某一時刻只能屬於乙個資料庫 由乙個或多個資料檔案組成 可進一步劃分為邏輯儲存單元 資料檔案 只能屬於...

oracle 管理表空間和資料檔案

介紹 表空間是資料庫的邏輯組成部分。從物理上講,資料庫資料存放在資料檔案中 從邏輯上講,資料庫則是存放在表空間中,表空間由乙個或多個資料檔案組成。資料庫的邏輯結構 介紹 oracle 中邏輯結構包括表空間 段 區和塊。說明一下資料庫由表空間構成,而表空間又是由段構成,而段又是由區構成,而 區又是由 ...

oracle 管理表空間和資料檔案

以下內容摘自oracle 11g 權威指南 tablespace 表空間 segment 段 extent 盤區 block 塊 一 表空間和資料檔案的關係 在oracle系統中,表空間與資料檔案是一對不能分開的概念,建立表空間時必須建立資料檔案,增加資料檔案時必須制定表空間。1 查詢表空間及其包含...