[oracle]log_archive_dest_n與DB_RECOVERY_FILE_DEST
DB_RECOVERY_FILE_DEST引數是預設的flash recovery area的路徑,裡面存放有歸檔日誌、閃回日誌以及rman的備份檔案等檔案。
LOG_ARCHIVE_DEST_n引數是存放歸檔日誌的路徑,n表示1~10的一個整數,由於歸檔日誌在recovery的時候擔當了重要的角色,所以我們可以設定多個歸檔目錄(最多可以設定10個)。這種情況下,聯機日誌在歸檔時,會在不同的目錄下都會生成有一個相同的歸檔檔案,通過冗餘的來保證歸檔日誌的安全。
系統預設的情況是以DB_RECOVERY_FILE_DEST定義的目錄來存放歸檔日誌。但是,課上演示的時候,老師已經設定了log_archive_dest_1、log_archive_dest_2和log_archive_dest_3,三個引數。我現在將這三個引數修改回去,讓系統使用預設的DB_RECOVERY_FILE_DEST目錄來存放歸檔日誌。
經過下面的操作,發現提示找不到歸檔的目錄。
SQL> alter system set log_archive_dest_1='';
SQL> alter system set log_archive_dest_2='';
SQL> alter system set log_archive_dest_3='';
SQL> alter system archive log current;
alter system archive log current
*
ERROR at line 1:
ORA-16014: log 2 sequence# 50 not archived, no available destinations
ORA-00312: online log 2 thread 1: '/opt/ora10g/oradata/orcl/redo02.log'
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination ?/dbs/arch
Oldest online log sequence 49
Next log sequence to archive 50
Current log sequence 51
解決辦法,我們暫時先指定一個目錄來存放歸檔日誌。然後再修改三個log_archive_dest_n的系統引數時,指定好scope為spfile,重啟例項即可。
SQL> alter system set log_archive_dest_1='location=/logs/log_1';
SQL> alter system archive log current;
System altered.
SQL> alter system set log_archive_dest_1='' scope=spfile;
SQL> alter system set log_archive_dest_2='' scope=spfile;
SQL> alter system set log_archive_dest_3='' scope=spfile;
SQL> startup force
ORACLE instance started.
Total System Global Area 285212672 bytes
Fixed Size 1218992 bytes
Variable Size 104859216 bytes
Database Buffers 176160768 bytes
Redo Buffers 2973696 bytes
Database mounted.
Database opened.
檢視一下現在使用的歸檔的目錄,已經成功改回為了DB_RECOVERY_FILE_DEST。
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 51
Next log sequence to archive 53
Current log sequence 53
最後再檢視一下log_archive_dest_n引數,這些引數都沒有被設定了,均為空:
SQL> show parameter log_archive_dest
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest string
log_archive_dest_1 string
log_archive_dest_10 string
log_archive_dest_2 string
log_archive_dest_3 string
log_archive_dest_4 string
log_archive_dest_5 string
log_archive_dest_6 string
log_archive_dest_7 string
log_archive_dest_8 string
log_archive_dest_9 string
小結:log_archive_dest_n與DB_RECOVERY_FILE_DEST引數都可以用來存放歸檔日誌,但二者的關係是:不設定log_archive_dest_n時,使用DB_RECOVERY_FILE_DEST來存檔案;當設定了log_archive_dest_n時,則使用log_archive_dest_n來存放歸檔日誌。
下面我們,再對log_archive_dest_n進行設定,讓DB_RECOVERY_FILE_DEST“失效”。
SQL>alter system set log_archive_dest_1='location=/logs/log_1' scope=spfile;
SQL>alter system set log_archive_dest_2='location=/logs/log_2' scope=spfile;
SQL>alter system set log_archive_dest_3='location=/logs/log_3' scope=spfile;
SQL> startup force
ORACLE instance started.
Total System Global Area 285212672 bytes
Fixed Size 1218992 bytes
Variable Size 109053520 bytes
Database Buffers 171966464 bytes
Redo Buffers 2973696 bytes
Database mounted.
Database opened.
我們進行下手動歸檔
SQL> alter system archive log current;
檢視下系統時間,發現三個目錄下,都已經有了最新的歸檔日誌:
[root@localhost logs]$ date
Wed Sep 1 10:48:39 CST 2010
[root@localhost logs]# ll -t log_1
-rw-r----- 1 oracle oinstall 280576 Sep 1 10:48 1_54_723037014.dbf
[root@localhost logs]# ll -t log_2
-rw-r----- 1 oracle oinstall 280576 Sep 1 10:48 1_54_723037014.dbf
[root@localhost logs]# ll -t log_3
-rw-r----- 1 oracle oinstall 280576 Sep 1 10:48 1_54_723037014.dbf
而DB_RECOVERY_FILE_DEST目錄下,已經不再會存放新的歸檔日誌了:
[oracle@localhost archivelog]$ ll 2010_09_01/
-rw-r----- 1 oracle oinstall 20992 Sep 1 10:07 o1_mf_1_52_67vfc7q5_.arc
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14600958/viewspace-672300/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle歸檔目錄 和 DB_RECOVERY_FILE_DESTOracle
- oracle 修改archive的地址到db_recovery_file_destOracleHive
- 歸檔日誌路徑三個引數DB_RECOVERY_FILE_DEST和LOG_ARCHIVE_DEST和LOG_ARCHIVE_DEST_nHive
- log_archive_dest與log_archive_dest_n區別Hive
- Oracle Data Guard LOG_ARCHIVE_DEST_n引數的可選屬性OracleHive
- LOG_ARCHIVE_DEST_n詳解Hive
- Oracle db_recovery_file_dest空間不足報ora-00257問題解決Oracle
- 【轉】詳解log_archive_dest與log_archive_dest_n區別Hive
- 關於 log_archive_dest與log_archive_dest_n a的區別Hive
- 17 LOG_ARCHIVE_DEST_n 引數屬性Hive
- standby_archive_dest和log_archive_dest_n區別Hive
- log_archive_dest_n裡的alternate屬性使用須知Hive
- LOG_ARCHIVE_DEST_n引數屬性——DATA GUARD概念和管理Hive
- LOG_ARCHIVE_DEST_n 中的各屬性 (包括valid_for等)Hive
- DG學習筆記(6)_LOG_ARCHIVE_DEST_N引數的各個屬性筆記Hive
- ORACLE_BASE 與 ORACLE_HOMEOracle
- Oracle CBO 與 RBOOracle
- ORACLE與hugepage(二)Oracle
- ORACLE與hugepage(一)Oracle
- 4.1.6 Oracle Restart 與 Oracle Data Guard 整合OracleREST
- IIS與oracle client ,還是oracle server ?OracleclientServer
- oracle資料庫與oracle例項Oracle資料庫
- Oracle Stream概述與配置Oracle
- oracle函式與操作Oracle函式
- oracle sqlldr 與 外部表OracleSQL
- Oracle與設計模式Oracle設計模式
- oracle pctfree與pctusedOracle
- SCN與oracle啟動Oracle
- 【TUNE_ORACLE】Oracle Hint之概念與用法Oracle
- ORACLE之常用FAQ:ORACLE網路與安全Oracle
- Oracle listener log配置與管理Oracle
- oracle與infomix異同點Oracle
- oracle 序列的建立與使用Oracle
- mysql與Oracle的區別MySqlOracle
- Oracle - @和@@、&與&& 的區別Oracle
- Oracle ASM 的redundancy與failgroupOracleASMAI
- Oracle AWR管理與維護Oracle
- Oracle的簇與簇表Oracle