首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

Oracle 8i 數據庫體系結構全解析:物理、邏輯、內存與進程四大層面

     編輯:Oracle 資料庫相關知識

一、物理結構(操作系統文件)

文件類型作用典型命名
數據文件存儲所有業務數據(表、索引、簇)*.dbf (如 users01.dbf)
重做日志文件記錄所有變更,支撐故障恢復redo*.log / log*.dbf
控制文件記錄數據庫物理結構(文件路徑、SCN、檢查點等)control*.ctl
參數文件實例啟動配置(內存、進程、文件路徑等)init.ora / spfile.ora

二、邏輯結構(存儲層次)

數據庫
 └─ 表空間 (Tablespace)  ← 邏輯容器,映射 1~N 個數據文件
      └─ 段 (Segment)     ← 對象級(表段、索引段、回滾段、臨時段)
           └─ 區 (Extent)  ← 連續塊組,最小分配單元
                └─ 數據塊 (Block) ← 最小 I/O 單元,對應 OS 1~N 物理塊
  • 一個段屬於一個表空間,可跨多個數據文件(跨文件擴展);
  • 一個區只能屬於一個數據文件(不跨文件);
  • 模式對象(表、視圖、索引、序列等)儲存於段中。

三、內存結構 (SGA + PGA)

四、進程架構

區域核心組件特點
SGA (共享)Buffer Cache、Shared Pool、Redo Log Buffer、Large Pool、Java Pool、Streams Pool實例啟動分配,所有進程可見
PGA (私有)排序區、哈希區、會話信息、游標狀態專用連接每進程一個,共享連接按需分配

五、關鍵交互流程

  1. 用戶進程 → 服務器進程(專用/共享);
  2. 服務器進程讀取數據塊 → Buffer Cache(未命中則物理讀);
  3. DML 修改 → Redo Log Buffer → LGWR 寫入 Redo Log File;
  4. Commit → LGWR 強制寫入 Redo Log + SCN 推進;
  5. DBWR 定期/觸發將髒塊寫入 Data File;
  6. Checkpoint (CKPT) 更新控制文件/數據文件頭標記一致性點。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
類型進程職責
用戶進程Client Process發起 SQL 請求
服務器進程Dedicated / Shared Server解析、執行、取數
後台進程PMON、SMON、DBWR、LGWR、CKPT、ARCH、RECO、CJQ0、Dnnn、Snnn 等實例自動化維護(清理、恢復、寫入、檢查點、歸檔、分布式恢復、作業調度、共享服務器調度)