alter system switch logfile 是強(qiáng)制日志切換,不一定就歸檔當(dāng)前的重做日志文件
(若自動(dòng)歸檔打開,就歸檔前的重做日志,若自動(dòng)歸檔沒有打開,就不歸檔當(dāng)前重做日志。) alter system archive log current 是歸檔當(dāng)前的重做日志文件,不管自動(dòng)歸檔有沒有打都?xì)w檔。 主要的區(qū)別在于: ALTER SYSTEM SWITCH LOGFILE對單實(shí)例數(shù)據(jù)庫或RAC中的當(dāng)前實(shí)例執(zhí)行日志切換; 而ALTER SYSTEM ARCHIVE LOG CURRENT會(huì)對數(shù)據(jù)庫中的所有實(shí)例執(zhí)行日志切換。
為什么執(zhí)行熱備后要執(zhí)行alter system archive log current 這個(gè)語句,看到很多腳本都是這樣寫的。 是不是必須的?
一般的RMAN腳本都是這樣寫的,因?yàn)镽MAN是可以備份歸檔日志的。
alter system archive log current 這樣后就可以將所有的歸檔都備份出來了。這樣做是為了保證數(shù)據(jù)的完整和一致。
ALTER SYSTEM SWITCH LOGFILE ; SWITCH LOGFILE Clause
TheSWITCHLOGFILEclause 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.
ALTER SYSTEM ARCHIVE LOG CURRENT ; CURRENT Clause
SpecifyCURRENTto manually archive the current redo log file group of the specified thread, forcing a log switch. If you omit theTHREADparameter, then Oracle archives all redo log file groups from all enabled threads, including logs previous to current logs. You can specifyCURRENTonly when the database is open.
ALTER SYSTEM ARCHIVE LOG CURRENT NOSWITCH; NOSWITCH
SpecifyNOSWITCHif 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 theNOSWITCHclause 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
|