Oracle日誌模式切換

llnnmc發表於2017-03-31

1、查詢當前模式


檢視當前模式及閃回狀態

archive log list;

select log_mode, flashback_on from v$database;


不能在閃回狀態下改

alter database flashback off;


2、歸檔目標設定


檢視歸檔日誌檔案目標位置

show parameter log_archive_dest;

log_archive_dest_1

log_archive_dest_2

如果已經指定了快速恢復區,預設情況下,歸檔日誌檔案將儲存在此快速恢復位置。


設定歸檔位置

alter system set log_archive_dest_1 = 'location=d:\archivelog\mes [mandatory] | [optional]';(本地用location,遠端用service

alter system set log_archive_dest_2 = 'location=...';

設定多個就表示多路複用(最多10個)。

選項mandatory是強制的意思,表示日誌切換必須等待歸檔完成,optional是可選的意思,表示歸檔沒有完成也可以切換日誌。

引數log_archive_dest_state_n表示歸檔目錄的狀態,enable表明該目錄有效。


檢視歸檔日誌檔名格式

show parameter log_archive_format;


Windows下預設格式

ARC%S_%R.%T

Linux下預設格式

%t_%s_%r.dbf

%T:指定執行緒號,顯示為v$instance檢視的thread#列,左側用 0 補齊,預設值包含 1 到 3 個字元。%t 指定執行緒號,此執行緒號左側不用 0 補齊,預設值對字元數沒有限制。該引數可用於RAC

%S:指定日誌序列號,左側用 0 補齊,預設值包含 1 到 3 個字元。%s 指定日誌序列號,此序列號左側不用 0 補齊,預設值對字元數沒有限制。

%R:可以包括重置日誌ID(資料庫的複本編號),左側用 0 補齊,%r 左側不用 0 補齊。

另外還有引數

%d:資料庫識別符號。該引數可用於多個資料庫歸檔到同一目錄。


設定歸檔日誌檔名格式,該格式必須在指定了歸檔路徑後才會生效,如果使用預設的閃回恢復區,則這裡的設定不會起作用,檔名格式將是OMF

alter system set log_archive_format = 'arc_%d_%t_%r_%s.log' scope = spfile;


設定保護歸檔日誌目標

由引數log_archive_min_succeed_dest指定在重寫聯機日誌檔案前必須已成功多路複用歸檔的目標數,預設為1

如果上面設定了兩路歸檔目標,則可以改設其值為2

alter system set log_archive_min_succeed_dest = 2;


3、更改模式


必須在mount狀態下更改日誌模式

shutdown immediate

startup mount


更改

alter database archivelog;alter database noarchivelog;非歸檔模式)


回到open狀態

alter database open;


4、驗證更改結果


檢視當前模式

archive log list;

select log_mode, flashback_on from v$database;


檢視歸檔日誌檔案資訊

select sequence#, name from v$archived_log;


說明:

1、如果是Oracle9i及之前的版本,啟用歸檔還需要將引數log_archive_start設定為true

alter system set log_archive_start = true scope = spfile;

如果不使用上述命令更改初始化引數,而在執行時使用以下命令

alter system archive log start;

則雖然會啟用歸檔,但資料庫一旦關閉重啟之後則又不會開啟歸檔。


2可用以下命令對當前重做日誌進行手工歸檔

alter system archive log current;

而執行日誌切換時同樣會啟動歸檔

alter system switch logfile;


3、為匹配LGWRARCn程式的處理速度,防止因為歸檔速度慢導致日誌切換等待而使資料庫被hang住,可對歸檔程式數量進行調整。歸檔程式數量在10g中預設為211g中預設為4,該引數可動態調整

alter system set log_archive_max_processes = 4;


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28974745/viewspace-2136427/,如需轉載,請註明出處,否則將追究法律責任。

相關文章