資料庫 = **管理資料檔案的一組程式** + **資料檔案本身**。包含使用者資料 (業務資料) 與系統資料 (中繼資料)。
| 表空間 | 用途 | 備註 |
|---|---|---|
| SYSTEM | 資料字典、系統核心物件 | 建庫自動建立、不可離線/刪除 |
| SYSAUX | 輔助系統元件 (EM, AWR, Streams 等) | 10g+ 引入、減輕 SYSTEM 壓力 |
| UNDO | 儲存 UNDO 資料 (交易回滾、讀一致性) | 自動 UNDO 管理模式專用 |
| TEMP | 排序、雜湊、臨時表等臨時段 | 本地管理、暫時表空間群組 |
| USERS | 使用者永久物件預設表空間 | 建議建立專屬業務表空間替代 |
| INDEX | 索引專用 (可選) | 分離索引與表資料檔 |
UNDO_RETENTION 參數控制保留秒數,支援長時間查詢與閃回查詢CACHE Hint 可置於熱端-- 查看表空間使用率
SELECT tablespace_name,
ROUND(SUM(bytes)/1024/1024,2) AS total_mb,
ROUND(SUM(bytes)/1024/1024 - NVL(SUM(free_bytes),0)/1024/1024,2) AS used_mb
FROM dba_data_files
LEFT JOIN (SELECT tablespace_name, SUM(bytes) free_bytes FROM dba_free_space GROUP BY tablespace_name) USING (tablespace_name)
GROUP BY tablespace_name;
-- 查看重做日誌組狀態
SELECT group#, sequence#, bytes/1024/1024 AS size_mb, members, archived, status FROM v$log;
-- 查看 UNDO 統計
SELECT * FROM v$undostat;
掌握 **表空間-區段-區塊-塊** 四層邏輯結構、**資料檔/控制檔/重做日誌** 三大物理檔案、**重做/UNDO/緩衝區** 三大核心機制,即建立起 Oracle 架構的完整心智模型,是效能調校、備份復原、故障排查的基石。