對于Oracle Data Guard 的Maximum Availability和 Maximum Performance 兩種模式下的主庫歸檔檔案的删除,必須是在歸檔檔案在備庫應用以後才可以删除。
對于Maximum Protection 模式,這種模式的日志是同時寫到主庫和備庫的,是以這種模式下的主庫删除歸檔,沒有限制。可以直接删除。
那麼在Maximum Availability和 Maximum Performance下,RMAN 備份歸檔檔案的時候,如果我們加上delete input,那麼如何确定歸檔問及愛你該不該删除。
在10g之前的版本,隻能通過作業系統腳本的方式,在删除歸檔檔案之前,首先對Standby端資料庫的歸檔檔案應用狀态作判斷,應用之後才能在Primary端執行正常删除。
在Oracle 10g 後,RMAN提供了配置歸檔檔案删除政策:configure archivelog deletion policy
該政策對應兩個值:
APPLIED ON STANDBY :設定為該值時,當通過附加的 DELETE INPUT 子句删除Standby資料庫仍需要的日志時,會提示RMAN-08137錯誤。不過仍然可以手動地通過 DELETE ARCHIVELOG 方式删除。
NONE :設定為該值時,則不啟用歸檔檔案的删除政策。預設情況下就是NONE。
我們配置一下:
RMAN> configure archivelog deletion policy to applied on standby;
old RMAN configuration parameters:
CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON STANDBY;
new RMAN configuration parameters:
new RMAN configuration parameters are successfully stored
RMAN-08591: WARNING: invalid archivelog deletion policy
這裡有個警告,解決方法,執行如下指令:
SQL>alter system set "_log_deletion_policy"=ALL scope=spfile sid='*';
設定該參數以後,DB 需要重新開機。
具體參考:
RMAN backups in Max Performance/Max Availability Data Guard Environment [ID 331924.1]
<a href="http://blog.csdn.net/tianlesoftware/archive/2011/03/07/6227944.aspx">http://blog.csdn.net/tianlesoftware/archive/2011/03/07/6227944.aspx</a>
修改之後,我們在設定:
using target database control file instead of recovery catalog
RMAN> configure archivelog deletion policy to none;
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE;
修改之後成功修改RMAN 的歸檔檔案删除政策。
本文轉自東方之子736651CTO部落格,原文連結:http://blog.51cto.com/ecloud/1289474 ,如需轉載請自行聯系原作者