程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle9i中利用自動撤銷管理的優點

Oracle9i中利用自動撤銷管理的優點

編輯:Oracle數據庫基礎

在Oracle9i中,Oracle對回滾段進行了重新命名,現在將其作為撤銷日志。在傳統的操作上,回滾段保存交換的撤銷信息,直到系統發送一個響應或者回滾語句。

人工撤銷管理在Oracle9i仍然被使用,但絕大多數的Oracle DBAs都選擇了新的自動方法,這使得它們可以從常規撤銷管理任務和調整中解放出來。

最重要的是,自動撤銷管理允許DBA指定撤銷信息在提交之後需要保留的時間,以防止在長時間的查詢過程中出現“snapshot too old”的錯誤。可以通過設置UNDO_RETENTION參數來實現這一過程。這一參數的缺省值為900秒(即15分鐘),但你可以設置這一參數以保證Oracle保留撤銷日志。

無需定義和管理回滾段,你就可以簡單地指定一個撤銷表空間而減輕Oracle9i的負擔。

自動撤銷管理需要一個當地管理撤銷表空間,這一表空間用於存放撤銷段。你所需要的是建立一個撤銷表空間,設置UNDO_MANAGEMENT=AUTO,然後與數據庫進行連接。當啟動一個例子時,Oracle會自動選擇第一個可用的撤銷表空間。

  

  CREATE UNDO TABLESPACE

    ts_undo

  DATAFILE

    '/u01/oradata/prod/ts_undo.dbf'

  SIZE 2M REUSE AUTOEXTEND ON;

  

  Alter system set undo_tablespace=ts_undo;

  Alter system set undo_management=auto; 

 
 

一旦已經建立了撤銷表空間,你可以使用以下新Oracle9i查詢來查看撤銷信息。

  

  V$UNDOSTAT 

  V$ROLLSTAT 

  V$TRANSACTION 

  DBA_UNDO_EXTENTS

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved