強制日誌切換和歸檔當前的重做日誌的命令的區別

huzhichengforce發表於2014-05-31
強制日誌切換和歸檔當前的重做日誌的命令的區別
alter system switch logfile和alter system archive log current的區別
我的理解:
1、alter system switch logfile 是強制日誌切換,不一定就歸檔當前的重做日誌檔案(若自動歸檔開啟,就歸檔當前的重做日誌,若自動歸檔沒有開啟,就不歸檔當前重做日誌。)
【感悟】 切換日誌檔案,但未必對其進行歸檔。主要還看自動歸檔是否開啟!
2、alter system archive log current 是歸檔當前的重做日誌檔案,不管自動歸檔有沒有打都歸檔。
【感悟】 既切換日誌檔案,又對其進行歸檔!
3、主要的區別在於: 【重要】
ALTER SYSTEM SWITCH LOGFILE對單例項資料庫或RAC中的當前例項執行日誌切換;
而ALTER SYSTEM ARCHIVE LOG CURRENT會對資料庫中的所有例項執行日誌切換。
為什麼執行熱備後要執行alter system archive log current 這個語句,看到很多指令碼都是這樣寫的。
是不是必須的?
一般的RMAN指令碼都是這樣寫的,因為RMAN是可以備份歸檔日誌的。alter system archive log current 這樣後就可以將所有的歸檔都備份出來了。這樣做是為了保證資料的完整和一致。
 
詳細說明:
ALTER SYSTEM SWITCH LOGFILE ;
SWITCH LOGFILE Clause
The SWITCH LOGFILE clause lets you explicitly force Oracle to begin writing to a new redo log file group, regardless of whether the files in the current redo log file group are full. When you force a log switch, Oracle begins to perform a checkpoint but returns control to you immediately rather than when the checkpoint is complete. To use this clause, your instance must have the database open.
SWITCH LOGFILE 條款明確地指出強制oracle開始寫入新的一個重做日誌組,不管當前的重做日誌檔案是否寫滿了。當你強制切換重做日誌時,oracle開始執行檢查點並且立即返還管理權給你而不是等到檢查點完成才返還你控制權。要是該條款生效,您的例項必須處於開啟狀態。
ALTER SYSTEM ARCHIVE LOG CURRENT ;
CURRENT Clause
Specify CURRENT to manually archive the current redo log file group of the specified thread(instance), forcing a log switch. If you omit the THREAD parameter, then Oracle archives all redo log file groups from all enabled threads(instances), including logs previous to current logs. You can specify CURRENT only when the database is open.
指定CURRENT引數來手動歸檔當前重做日誌組並指定執行緒(例項),強制切換日誌。如果你忽略THREAD引數,那麼oracle將歸檔所有可用執行緒(例項)的所有重做日誌組,包括當前重做日誌以前的所有日誌。你也可以只指定當前開啟的資料庫。
ALTER SYSTEM ARCHIVE LOG CURRENT NOSWITCH;
NOSWITCH
Specify NOSWITCH if you want to manually archive the current redo log file group without forcing a log switch. This setting is used primarily with standby databases to prevent data divergence when the primary database shuts down. Divergence implies the possibility of data loss in case of primary database failure.
指定不切換日誌
You can use the NO SWITCH clause only when your instance has the database mounted but not open. If the database is open, then this operation closes the database automatically. You must then manually shut down the database before you can reopen it.
此文為以前在網上看到的為轉載 謝謝。

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

相關文章