關于archivelog delete input 和delete all input差別
1 rman的歸檔位置定義兩個
log_archive_dest_1 string LOCATION=/oracle/archive
log_archive_dest_2 string LOCATION=/oracle/archive2/
2 執行alter system switch logfile指令後兩個歸檔目錄下的歸檔日志
[oracle@oracle archive]$ ls -lt
total 2648
-rw-r----- 1 oracle oinstall 1024 Aug 17 16:29 1_38_791488634.dbf
-rw-r----- 1 oracle oinstall 1536 Aug 17 16:29 1_37_791488634.dbf
-rw-r----- 1 oracle oinstall 1536 Aug 17 16:29 1_35_791488634.dbf
-rw-r----- 1 oracle oinstall 1024 Aug 17 16:29 1_36_791488634.dbf
-rw-r----- 1 oracle oinstall 5120 Aug 17 16:26 1_34_791488634.dbf
-rw-r----- 1 oracle oinstall 59392 Aug 17 16:23 1_33_791488634.dbf
--------------------------------------------------------------------------
[root@oracle archive2]# ls -lt
total 88
-rw-r----- 1 oracle oinstall 1024 Aug 17 16:29 1_38_791488634.dbf
-rw-r----- 1 oracle oinstall 1536 Aug 17 16:29 1_37_791488634.dbf
-rw-r----- 1 oracle oinstall 1536 Aug 17 16:29 1_35_791488634.dbf
-rw-r----- 1 oracle oinstall 1024 Aug 17 16:29 1_36_791488634.dbf
-rw-r----- 1 oracle oinstall 5120 Aug 17 16:26 1_34_791488634.dbf
-rw-r----- 1 oracle oinstall 59392 Aug 17 16:23 1_33_791488634.dbf
3 執行
RMAN> backup database plus archivelog delete input; 檢視日志可以發現oracle删除的歸檔日志僅僅是其備份過的。
archived log file name=/oracle/archive2/1_33_791488634.dbf RECID=321 STAMP=791569408
archived log file name=/oracle/archive/1_34_791488634.dbf RECID=322 STAMP=791569592
archived log file name=/oracle/archive/1_35_791488634.dbf RECID=324 STAMP=791569775
archived log file name=/oracle/archive2/1_36_791488634.dbf RECID=327 STAMP=791569775
archived log file name=/oracle/archive2/1_37_791488634.dbf RECID=329 STAMP=791569778
archived log file name=/oracle/archive/1_38_791488634.dbf RECID=330 STAMP=791569780
archived log file name=/oracle/archive/1_39_791488634.dbf RECID=332 STAMP=791570012
archived log file name=/oracle/archive/1_40_791488634.dbf RECID=334 STAMP=791570187
注意删除的歸檔日志位置随機有archive2 也有archive。
4 重新切換生成歸檔日志
total 2684
-rw-r----- 1 oracle oinstall 1024 Aug 17 16:53 1_46_791488634.dbf
-rw-r----- 1 oracle oinstall 1536 Aug 17 16:53 1_44_791488634.dbf
-rw-r----- 1 oracle oinstall 1024 Aug 17 16:53 1_45_791488634.dbf
-rw-r----- 1 oracle oinstall 1024 Aug 17 16:53 1_42_791488634.dbf
-rw-r----- 1 oracle oinstall 1024 Aug 17 16:53 1_43_791488634.dbf
-rw-r----- 1 oracle oinstall 32768 Aug 17 16:53 1_41_791488634.dbf
----------------------------------------------------------------------------
total 92
-rw-r----- 1 oracle oinstall 1024 Aug 17 16:53 1_46_791488634.dbf
-rw-r----- 1 oracle oinstall 1536 Aug 17 16:53 1_44_791488634.dbf
-rw-r----- 1 oracle oinstall 1024 Aug 17 16:53 1_45_791488634.dbf
-rw-r----- 1 oracle oinstall 1024 Aug 17 16:53 1_42_791488634.dbf
-rw-r----- 1 oracle oinstall 1024 Aug 17 16:53 1_43_791488634.dbf
-rw-r----- 1 oracle oinstall 32768 Aug 17 16:53 1_41_791488634.dbf
5 執行backup database plus archivelog delete all input ;檢視日志發現oracle删除的歸檔日志 發現删除了兩個目錄下的所有日志
archived log file name=/oracle/archive2/1_40_791488634.dbf RECID=335 STAMP=791570187
archived log file name=/oracle/archive/1_41_791488634.dbf RECID=336 STAMP=791571221
archived log file name=/oracle/archive2/1_41_791488634.dbf RECID=337 STAMP=791571221
archived log file name=/oracle/archive2/1_42_791488634.dbf RECID=339 STAMP=791571222
archived log file name=/oracle/archive/1_42_791488634.dbf RECID=338 STAMP=791571222
archived log file name=/oracle/archive/1_43_791488634.dbf RECID=340 STAMP=791571222
archived log file name=/oracle/archive2/1_43_791488634.dbf RECID=341 STAMP=791571222
archived log file name=/oracle/archive/1_44_791488634.dbf RECID=342 STAMP=791571228
archived log file name=/oracle/archive2/1_44_791488634.dbf RECID=343 STAMP=791571228
archived log file name=/oracle/archive/1_45_791488634.dbf RECID=344 STAMP=791571228
archived log file name=/oracle/archive2/1_45_791488634.dbf RECID=345 STAMP=791571228
archived log file name=/oracle/archive2/1_46_791488634.dbf RECID=347 STAMP=791571229
archived log file name=/oracle/archive/1_46_791488634.dbf RECID=346 STAMP=791571229
archived log file name=/oracle/archive/1_47_791488634.dbf RECID=348 STAMP=791571526
archived log file name=/oracle/archive2/1_47_791488634.dbf RECID=349 STAMP=791571526
oracle官方文檔提示:
If you had specified DELETE INPUT rather than DELETE ALL INPUT, then RMAN would have only deleted the specific archived redo log files that it backed up. For
example, RMAN would delete the logs in /arc_dest1 if these files were used as the source of the backup, but leave the contents of the /arc_dest2 intact
如果指定delete input ,則rman将僅删除已備份的歸檔日志,例如對于有兩個歸檔目錄 /arc_dest1 和 /arc_dest2 如果把/arc_dest1做為backup的源,delete input将删除 /arc_dest1 中的内容,保留dest2中的歸檔日志,通過實驗可以看出,就算有兩個歸檔位置,rman備份的時候貌似是以日志檔案為源,備份過的日志删除。
---------------------------------------------------------------------------------------------------------------------------------------------------
If you had specified DELETE ALL INPUT RMAN backs up only one copy of each log sequence number in these archiving locations.it deletes all copies of any log that it backed up from the other archiving destinations
如果指定delete all input RMAN對于所有歸檔目錄中的日志序列号隻備份一次,同時rman會删除dest1 和dest2 中所有歸檔日志。
結論:對于僅有一個歸檔目錄 delete input 和delet all input 沒啥差別。
本文轉自 zhangxuwl 51CTO部落格,原文連結:http://blog.51cto.com/jiujian/983589,如需轉載請自行聯系原作者