DG归档删除策略

DG删除归档策略

仅归档模式下删除策略

处于归档模式的数据库:

1.删除,直到备份了2次

CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP 2 TIMES TO DEVICE TYPE DISK;

2.删除七天前归档,在rman脚本中:

delete nopromt archivelog until time 'sysdate-7';

遵循上面的策略,如果某些归档日志未至少备份两次,即使它已过期很多天,也会收到错误提示:

RMAN-08138: warning: archived log not deleted - must create more backups
archived log file name=/oradata/recovery/PATODB/archivelog/2020_07_20/o1_mf_1_8_hlvgk4xo.arc thread=1 sequence=8

DG的归档删除

如果是 DataGuard 环境,则需要在删除存档日志之前小心,因为它们是 input 进行备用恢复。所以你需要:

  1. 使用以下选项之一配置 RMAN:
CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;

在将其应用于备用数据库后删除。

CONFIGURE ARCHIVELOG DELETION POLICY TO SHIPPED TO ALL STANDBY;

如果已将其发送到备用数据库,但尚未应用,则删除。

  1. 在备份时在主实例中执行 archivelog 删除(在本例中为 archivelogs 超过 7 天) 已经备份了两次) 在 RMAN 备份脚本中包含该命令:delete archivelog
delete noprompt archivelog until time 'sysdate-7' BACKED UP 2 TIMES TO DEVICE TYPE DISK;

遵循此策略后,如果尚未将某些 archivelog 应用于所有备用数据库,您将收到错误 即使它是旧的并且已经备份:

RMAN-08120: warning: archived log not deleted, not yet applied by standby
archived log file name=/oradata/recovery/PRMYDB/archivelog/...

或者,如果尚未将其发送到所有备用数据库,则为错误:

RMAN-08137: warning: archived log not deleted, needed for standby or upstream capture process
archived log file name=/oradata/recovery/PRMYDB/archivelog/...
posted @   EverEternity  阅读(12)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示