oracle歸檔日誌

wddwr7307914發表於2021-04-02


 一、歸檔和非歸檔的區別 

1)歸檔會在日誌切換時,備份歷史日誌,對於 OLTP 系統都應考慮歸檔模式,以便資料庫能 支援熱備,

並提供資料庫完全恢復和不完全恢復(基於時間點)

2)歸檔會啟用 arcn 的後臺程式、也會佔用磁碟空間 

3)非歸檔適用某種靜態庫、測試庫、或者可由遠端提供資料恢復的資料庫。非歸檔只能冷備, 且僅能還原最後一次全備。

歸檔可以恢復到最後一次 commit


二、路徑及命名方法

2.1 檢視歸檔模式

可以透過 archive log list 命令顯示

SYS@PROD>archive log list

檢視歸檔模式也可以查 v$database 

SYS@PROD>select name,log_mode from v$database;

2.2 歸檔路徑選擇

Oracle 判斷歸檔目的地時按如下順序優先擇取

①log_archive_dest_n 值或 log_archive_dest 值 優先順序最高 

②db_recover_file_dest 引數指定的位置(快速恢復區) 

③$ORACLE_HOME/dbs 引數指定的位置 

SYS@PROD>show parameter log_archive_dest
SYS@PROD>show parameter db_recovery_file_dest
SYS@PROD>! echo $ORACLE_HOME/dbs

【log_archive_dest_1】

把歷史日誌歸檔到本機目錄下:
location 代表本機,service 代表遠端,配置 DG 時有用。
SYS@PROD>show parameter log_archive_dest_1 
SQL> alter system set log_archive_dest_2='service=standby'; 
遠端備份,把歷史日誌備份到網路連線符為 standby 的資料庫上。

【log_archive_format】

log_archive_format 是定義命名格式的,一般考慮使用下面三個內建符號(模板) 
%t thread# 日誌執行緒號 
%s sequence 日誌序列號 
%r resetlog 代表資料庫的週期 
引數預設設定的格式如下:
SYS@PROD>show parameter log_archive_format

三、開歸檔 設定歸檔模式

3.1 建立目錄 賦予許可權

[oracle@enmoedu1 ~]$ mkdir -p /u01/app/oracle/arch 

[oracle@enmoedu1 ~]$ ls -ld /u01/app/oracle/arch

3.2 制定歸檔目錄

SYS@PROD>alter system set log_archive_dest_1='location=/u01/app/oracle/arch'; 
SYS@PROD>show parameter log_archive_dest_1
設定歸檔檔案命名格式(靜態引數,scope=spfile,重啟後生效) 
SYS@PROD>alter system set log_archive_format='arch_PROD_%t_%s_%r.dbf' scope=spfile;

3.3 正常關庫,啟動到 mount 狀態

SYS@PROD>shutdown immediate; 
SYS@PROD>startup mount; 
SYS@PROD>archive log list

3.4 開歸檔 開庫

SYS@PROD>alter database archivelog; 
SYS@PROD>alter database open; 
SYS@PROD>archive log list;

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

相關文章