Oracle歸檔模式的切換

來源:文萃谷 3.12W

我們大家都知道在Oracle數據庫的實際的測試環境與相關的開發環境中,Oracle數據庫的實際應用日誌模式與自動Oracle歸檔模式在一般的情況下是不設置的,其主要目的是利於系統應用的調整,也免的生成大量的歸檔日誌文件將磁盤空間大量的消耗。

Oracle歸檔模式的切換

但在系統上線,成為生產環境時,將其設置為日誌模式並自動歸檔就相當重要了,因為,這是保證系統的安全性,有效預防災難的重要措施。

這樣,通過定時備份數據庫和在兩次備份間隔之間的日誌文件,可以有效的恢復這段時間的任何時間點的數據,可以在很多時候挽回或最大可能的減少數據丟失。雖然Oracle數據庫的日誌模式和自動歸檔設置並不複雜,但其中的一些概念和操作過程還是容易混淆的,現在根據本人的經驗,分析介紹如下,所用環境為UNIX(HPUX,SOLARIES,AIX,TRU64UNIX)和Oracle8.

一要使OARCLE數據庫進行日誌的'自動歸檔,需要做兩方面的事情,一是數據庫日誌模式的設置(database log mode,可為Archive Mode和No Archive Mode),另外就是自動Oracle歸檔模式設置(Automatic archival,可為Enabled和Disabled)。二如何查看數據庫的現行日誌和自動Oracle歸檔模式的設置:

  可用archive log list命令來查看。

例如:

運行在日誌自動Oracle歸檔模式下的數據庫系統查看結果如下(一般是生產環境)

GR> archive log list

base log mode Archive Mode

matic archival Enabled

ive destination/backup/archivelog

st online log sequence 2131

log sequence to archive  2133

ent log sequence  2133

沒有啟動數據庫日誌模式和自動歸檔的數據庫系統查看結果如下(一般是測試環境)

GR> archive log list

base log mode No Archive Mode

matic archival Disabled

ive destination/u01/app/Oracle/product/8.0.5/dbs/arch

st online log sequence 194

ent log sequence  196

  三數據庫日誌模式的設置

在創建數據庫時,可以在CREATE DATABASE 語句中指定數據庫的日誌模式。假如沒有指明,則缺省為NOARCHIVELOG模式。由於如果在創建數據庫時指明是Archive Mode的話,會增加約20%的創建時間,而在以後啟動INSTANCE時再設置的話,一般只用去幾秒的時間,所以一般在創建數據庫時是不設置為 ARCHIVE MODE的。

如要確定一系統數據庫的日誌模式設置,除了(二)中的方法外也可以執行如下操作查看:

GR> Select * from V$DATABASE

 CREATEDLOG_MODE CHECKPOINT ARCHIVE_CH

 05/21/97 17:55:06 NOARCHIVELOG 172185 170808

將數據庫的日誌模式設置Oracle歸檔模式的切換(Archive Mode 和No Archive Mode之間的切換)的步驟和操作如下:

1. 關閉運行的數據庫實例

GRL> shutdown

在進行日誌模式切換之前,必須將運行的數據庫正常關閉。

2. 備份數據庫

該備份跟以後產生的日誌一起用於將來的災難恢復(很重要,如要改為歸檔日誌模式,沒有這個數據庫備份,僅有日誌文件是無法從該時間點恢復的)。

3. 啟動數據庫實例到mount狀態,但不要打開。

GRL> startup mount

注意:如果是使用OPS的話,請只打開一個數據庫實例進行模式Oracle歸檔模式的切換操作。

4. 切換數據庫日誌模式。

GRL> alter database archivelog;

(設置數據庫為歸檔日誌模式)

GRL> alter database noarchivelog;

(設置數據庫為歸檔日誌模式)

5. 打開數據庫

GRL> alter database open;

熱門標籤