8.管理歸檔日誌(筆記)
8.管理歸檔日誌
歸檔日誌(Archive Log)是非活動的重做日誌備份.透過使用歸檔日誌,可以保留所有重做歷史記錄,當資料庫處於ARCHIVELOG模式並進行日誌切換式,後臺程式ARCH會將重做日誌的內容儲存到歸檔日誌中.當資料庫出現介質失敗時,使用資料檔案備份,歸檔日誌和重做日誌可以完全恢復資料庫.
日誌操作模式:ARCHIVELOG NOARCHIVELOG
1,改變日誌操作模式:
檢查當前日誌操作模式
SELECT log_mode from v$database;
關閉資料庫,然後裝載資料庫
SHUTDOWN IMMEDIATE
STARTUP MOUNT
改變日誌操作模式,然後開啟資料庫
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE OPEN;
2,執行手工歸檔
從oracle database 10g開始,當將日誌操作模式轉變未ARCHIVELOG模式時,oracle會自動啟動ARCH程式.如果要使用手工歸檔.那麼在改變日誌操作模式時必須使用命令ALTER DATABASE ARCHIVELOG MANUAL.
需要注意,使用手工歸檔方式,資料庫管理員必須手工執行歸檔命令.如果沒有執行手工歸檔命令,日誌組的原有內容將不能被覆蓋.ALTER DATABASE ARCHIVELOG MANUAL 命令是為了與先前的版本相容而保留的,.將來的oracle版本會淘汰該命令,使用手工歸檔方式是,資料庫管理員可以執行以下命令歸檔重做日誌:
SLTER SYSTEM ARCHIVELOG ALL;
3,配置歸檔程式
初始化引數LOG_ARCHIVE_MAX_PROCESSES用於指定例程初始啟動的最大歸檔程式個數,當將資料庫轉變為ARCHIVELOG模式時,預設情況下oracle會自動啟動兩個歸檔程式.透過改變初始化引數LOG_ARCHIVE_MAX_PROCESS的值,可以動態地增加或降低歸檔程式的個數:
ALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES=3;
配置歸檔位置和檔案格式
當資料庫處於ARCHIVELOG模式時,如果進行日誌切換,後臺程式將自動生成歸檔日誌,歸檔日誌的預設位置為%oracle_home%rdbms,在oracle database 10g中,歸檔日誌的預設檔案格式為ARC%S_%R.%T.為了改變歸檔日誌的位置和名稱格式,必須改變相應的初始化引數,
1,初始化引數LOG_ARCHIVE_FORMAT用於指定歸檔日誌的檔名格式,設定該初始化引數時,可以指定以下匹配符:
%s: 日誌序列號:
%S: 日誌序列號(帶有前導0)
%t: 重做執行緒編號.
%T: 重做執行緒編號(帶有前導0)
%a: 活動ID號
%d: 資料庫ID號
%r RESETLOGS的ID值.
從10g開始,配置歸檔日誌檔案格式時,必須帶有%s,%t和%r匹配符,配置了歸檔檔案格式後,必須重啟資料庫.
2,使用LOG_ARCHIVE_DEST配置歸檔位置
如果不使用備用資料庫,只需要將歸檔日誌存放到本地目錄.配置本地歸檔位置可以使用初始化引數LOG_ARCHIVE_DEST和LOG_ARCHIVE_DUPLEX_DEST,其中,第一個引數用於設定第一個歸檔位置,第二個引數用於指定第二個歸檔位置.
ALTER SYSTEM SET log_archive_dest=’d:demoarchive1’;
ALTER SYSTEM SET log_archive_duplex_dest=’d:demoarchive2’;
3,使用LOG_ARCHIVE_DEST_n配置多個歸檔位置.
初始化引數LOG_ARCHIVE_DEST_n用於指定多個歸檔位置,該引數最多可以指定10個歸檔位置.透過使用初始化引數LOG_ARCHIVE_DEST_n,不僅可以配置本地歸檔位置,還可以配置遠端歸檔位置.
如果既要在主節點上生成歸檔日誌,又要將歸檔日誌傳遞到備用節點,那麼必須使用引數LOG_ARCHIVE_DEST_n.該引數與LOG_ARCHIVE_DEST具有如下區別;
初始化引數LOG_ARCHIVE_DEST_n可以配置本地歸檔位置和遠端歸檔位置,而初始化引數LOG_ARCHIVE_DEST和LOG_ARCHIVE_DUPLEX_DEST只能配置本地歸檔位置.
初始化引數LOG_ARCHIVE_DEST_n可以配置多達10個歸檔位置,而初始化引數LOG_ARCHIVE_DEST和LOG_ARCHIVE_DUPLEX_DEST最多隻能配置兩個歸檔位置.
初始化引數LOG_ARCHIVE_DEST_n 不能與初始化引數LOG_ARCHIVE_DEST和LOG_ARCHIVE_DUPLEX_DEST同時使用.
因為初始化引數LOG_ARCHIVE_DEST_n不能與初始化引數LOG_ARCHIVE_DEST和LOG_ARCHIVE_DUPLEX_DEST同時使用,所以必須禁用初始化引數LOG_ARCHVE_DEST和LOG_ARCHIVE_DUPLEX_DEST.當使用初始化引數LOG_ARCHIVE_DEST_n配置本地歸檔位置時,需要指定LOCALTION選項.當配置遠端歸檔位置時,需要指定SERVICE選項.
示例如下:
ALTER SYSTEM SET log_archive_duplex_dest=’’;
ALTER SYSTEM SET log_archive_dest=’’;
ALTER SYSTEM SET log_archive_dest_1=’location=d:demoarchive1’;
ALTER SYSTEM SET log_archive_dest_2=’location=d:demoarchive2’;
ALTER SYSTEM SET log_archive_dest_3=’location=d:demoarchive3’;
ALTER SYSTEM SET log_archive_dest_4=’service=standby’;
配置遠端歸檔位置時,SERVICE選項需要指定遠端資料庫的網路服務名(在tnsnames.ora檔案中配置)
4,使用LOG_ARCHIVE_DEST_n選項
使用初始化引數LOG_ARCHIVE_DEST_n配置歸檔位置時,可以在歸檔位置上指定OPTIONAL或MANDATORY選項.指定MANDATORY選項時,可以設定REOPEN屬性.
OPTIONAL:該選項是預設選項.使用該選項時,無論歸檔是否成功,都可以覆蓋重做日誌.
MANDATORY:強制歸檔.使用該選項時,只有在歸檔成功之後,重做日誌才能被覆蓋.
REOPEN:該屬性用於指定重新歸檔的時間間隔,預設值為300秒,必須跟在MANDATORY後.
例:
Alter system set log_archive_dest_1=’location=d:demoarchive1 mandatory’;
Alter system set log_archive_dest_2=’location=d:demoarchive2 mandatory reopen=500’;
Alter system set log_archive_dest_3=’location=d:demoarchive3 optional’;
5,控制本地歸檔成功的最小個數.
使用初始化引數LOG_ARCHIVE_MIN_SUCCEED_DEST控制本地歸檔的最小成功個數
Alter system set log_archive_min_succeed_dest=2;
6,使用初始化引數LOG_ARCHIVE_DEST_STATE_n控制歸檔位置的可用性.設定該引數為ENABLE(預設值),表示會啟用相應的歸檔位置;設定該引數為DEFER,表示禁用相應歸檔位置.當歸檔日誌所在磁碟損壞或填滿時,DBA需要暫時禁用該歸檔位置.
Alter system set log_archive_dest_state_3=defer;(禁用)
Alter system set log_archive_dest_state_3=enable;(啟用)
顯示歸檔日誌資訊
1,使用ARCHIVE LOG LIST命令可以顯示日誌操作模式,歸檔位置,自動歸檔機器要歸檔的日誌序列號等資訊.
2顯示日誌操作模式
SELECT name,log_mode FROM v$database;
3,顯示歸檔日誌資訊.
Col name format a40
Select name, swquence#, first_change# FROM v$archived_log;
Name用於表示歸檔日誌檔名,sequence#用於表示歸檔日誌對應的日誌序列號,firs_change#用於標識歸檔日誌的起始SCN值.
4執行介質恢復時,需要使用歸檔日誌檔案,此四必須準確定位歸檔日誌的存放位置.透過查詢動態效能檢視v$archive_dest可以取得歸檔日誌所在目錄.
SELECT destination FROM v$archive dest;
5,顯示日誌歷史資訊
SELECT * FROM v$loghist;
THREAD#用於標識重做執行緒號,SEQUNCE#用於標識日誌序列號,FIRST_CHANGE#用於標識日誌序列號對應的起始SCN值,FIRST_TIME用於標識起始SCN的發生時間.SWICTH_CHANGE#用於標識日誌切換的SCN值.
6.顯示歸檔程式資訊.
進行日誌切換時,ARCH程式會自動將重做日誌內容複製到歸檔日誌中,為了加快歸檔速度,應該啟用多個ARCH程式.透過查詢動態效能檢視V$ARCHIVE_PROCESSES可以顯示所有歸檔程式的資訊!
SELECT * FROM v$archive_processes;
Porcess用於標識ARCH程式的編號,status用於標識ARCH程式的狀態(ACTIVE:活動,STOPPED:未啟動),log_sequence用於標識正在進行歸檔的日誌序列號,state用於標識ARCH程式的工作狀態.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/312079/viewspace-245222/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【Oracle】歸檔日誌管理-設定歸檔日誌路徑以及歸檔日誌冗餘Oracle
- 日誌檔案和歸檔管理
- Oracle歸檔日誌管理技巧Oracle
- oracle之 Oracle歸檔日誌管理Oracle
- Oracle archive log 歸檔日誌管理OracleHive
- data guard 歸檔日誌管理 (standby)
- data guard 歸檔日誌管理 (primary)
- 歸檔日誌
- oracle11G歸檔日誌管理Oracle
- oracle歸檔日誌Oracle
- Oracle 歸檔日誌Oracle
- 歸檔日誌挖掘
- PostgreSQL 歸檔日誌SQL
- Oracle RAC中使用RMAN管理歸檔日誌Oracle
- 控制檔案/歸檔日誌
- 7.管理重做日誌(筆記)筆記
- 歸檔日誌多歸檔路徑 duplex
- 歸檔oracle alert日誌Oracle
- 14. 日誌歸檔
- PostgreSQL歸檔日誌配置SQL
- rman清理歸檔日誌
- archive log 歸檔日誌Hive
- 備份歸檔日誌
- 歸檔日誌 現象
- Oracle歸檔日誌清理Oracle
- 當ORACLE歸檔日誌滿後如何正確刪除歸檔日誌Oracle
- 用RMAN備份歸檔日誌時檢查歸檔日誌是否存在
- 誤刪歸檔日誌除導致備份歸檔日誌失敗
- 聯機重做日誌、歸檔日誌、備用重做日誌
- 備份歸檔日誌檔案
- 刪除歸檔日誌檔案
- db2 事務日誌和歸檔的管理DB2
- 手工rm刪除歸檔日誌對備份歸檔日誌的影響
- Oralce資料庫關閉歸檔日誌並且刪除歸檔日誌資料庫
- RMAN delete archivelog命令刪除歸檔日誌及歸檔日誌拷貝deleteHive
- 批量註冊歸檔日誌
- Oracle RMAN 清除歸檔日誌Oracle
- RAC 開啟歸檔日誌