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

Oracle 回滾段管理核心概念(上):架構、分類與運作機制

     編輯:Oracle 資料庫相關知識

回滾段核心作用

  • 交易回滾:儲存資料修改前的舊映像,支援 ROLLBACK 恢復原值。
  • 交易恢復:執行個體失效後,利用重做日誌中的回滾資訊回復未提交交易。
  • 讀一致性:查詢依 SCN 建立一致性視圖,長查詢期間其他 Session 修改的區塊透過回滾段重建舊版本。

交易級讀一致性

SET TRANSACTION READ ONLY;
-- 或
SET TRANSACTION SERIALIZABLE;

前者提供唯讀一致性視圖,後者提供可序列化隔離層級,但會影響並發效能。

回滾段分類

區塊使用與擴展機制

  1. 交易循環使用 Extent,當前 Extent 滿則 Wrap 至下一個。
  2. 若下一 Extent 仍有作用中交易,則 Extend 配置新 Extent,直到達 MAXEXTENTS。
  3. 多交易可共用同一 Extent,但同一區塊僅屬單一交易。

OPTIMAL 參數與空間回收

OPTIMAL 指定閒置時回收至的大小,自動或手動 SHRINK 皆可觸發,能有效避免回滾段無限膨脹浪費空間。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
類型用途備註
系統回滾段僅存 SYSTEM 表空間物件前映像建庫自動建立
非系統回滾段存非 SYSTEM 表空間物件前映像分私有/公有;私有需在參數檔列出自動上線
DEFERRED 回滾段表空間離線時自動建立,上線時自動刪除存離線期間產生的回滾資訊