首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle 表空間建立語法完整指南

     編輯:Oracle 資料庫基礎

Oracle 表空間建立語法完整指南

表空間是 Oracle 資料庫架構中的核心概念,掌握其建立語法對資料庫管理員至關重要。本文將詳細解析 CREATE TABLESPACE 語法的各項選項與參數,幫助您深入理解表空間建立機制。

基本語法結構

CREATE [UNDO] TABLESPACE tablespace_name
[DATAFILE datafile_spec1 [, datafile_spec2] ...]
[ { MINIMUM EXTENT integer [K|M]
  | BLOCKSIZE integer [K]
  | logging_clause
  | FORCE LOGGING
  | DEFAULT {data_segment_compression} storage_clause
  | [ONLINE|OFFLINE]
  | [PERMANENT|TEMPORARY]
  | extent_management_clause
  | segment_management_clause } ]

關鍵參數詳細說明

1. UNDO 選項

指定建立回滾表空間。Oracle 9i 之後,建立 UNDO 表空間後系統會自動管理回滾段的分配與回收,大幅降低 DBA 管理負擔。若未指定 UNDO 表空間,系統將使用 SYSTEM 表空間的回滾段處理交易。

2. TABLESPACE 名稱

定義表空間的唯一識別名稱,需遵循 Oracle 命名規範。

3. DATAFILE 數據檔案規格

指定表空間包含的物理數據檔案。語法格式:'filename' [SIZE integer [K|M]] [REUSE] [AUTOEXTEND {OFF|ON [NEXT integer [K|M]] [MAXSIZE {UNLIMITED|integer [K|M]}]}]

  • filename:數據檔案完整路徑
  • SIZE:初始檔案大小
  • REUSE:允許覆蓋同名現有檔案
  • AUTOEXTEND:自動擴展開關,ON 時需指定 NEXT 增量與 MAXSIZE 上限

範例:DATAFILE 'D:\Oracle\oradata\IMAGEDATA01.dbf' SIZE 2000M, 'D:\Oracle\oradata\IMAGEDATA02.dbf' SIZE 2000M

4. MINIMUM EXTENT

設定表空間中區段的最小擴展大小,有助減少空間碎片,確保所有擴展大小為該值的整數倍。

5. BLOCKSIZE

設定非標準區塊大小。使用前須先設定 db_block_size 及至少一個 db_nk_block_size 參數,且指定值必須等於對應的 db_nk_block_size。注意:臨時表空間不可設定此參數。

6. LOGGING / NOLOGGING

定義表空間上物件的預設日誌屬性(預設 LOGGING),影響表、索引、分區、物化視圖等物件的重做日誌產生行為。

7. FORCE LOGGING

強制表空間進入強制日誌模式,記錄所有物件變更(臨時段除外),優先級高於物件層級的 NOLOGGING 設定。限制:資料庫必須處於開啟且讀寫模式;UNDO 與臨時表空間不可使用。

8. DEFAULT STORAGE 子句

宣告表空間內物件的預設儲存參數。

9. ONLINE | OFFLINE

控制表空間建立後的狀態。ONLINE(預設)立即可用;OFFLINE 需手動上線。可透過 DBA_TABLESPACES 查詢狀態。

10. PERMANENT | TEMPORARY

指定表空間類型。永久表空間存放持久物件;臨時表空間存放 Session 期間的暫存物件。注意:宣告 TEMPORARY 後不可設定 BLOCKSIZE,且此類表空間僅支援字典管理,若需本地管理請使用 CREATE TEMPORARY TABLESPACE。

11. EXTENT MANAGEMENT 子句(關鍵)

決定表空間採用本地或字典管理模式,一旦設定只能透過遷移方式變更。

  • LOCAL:位圖管理,推薦做法。支援 AUTOALLOCATE(系統自動決定擴展大小,9.0+ 版本)與 UNIFORM [SIZE integer](固定大小,預設 1M)。
  • DICTIONARY:傳統字典管理模式。

Oracle 強烈建議使用本地管理表空間。若未指定此子句,系統依 COMPATIBLE 參數與儲存子句自動決定預設模式。

12. SEGMENT MANAGEMENT 子句

SEGMENT SPACE MANAGEMENT AUTO 啟用自動段空間管理(ASSM),以位圖取代自由列表管理區段空間,提升並發效能。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved