因此,我有一个在 RHEL 中运行的 Oracle 数据库(独立),并且我已安排 RMAN 每天和每周进行备份。有时我的文件系统(归档挂载点)因为归档生成过多而变满。现在从文件系统中删除档案的正确方法是什么?
我的 RMAN 脚本有这个
delete archivelog all completed before 'SYSDATE-5'
但是上面的命令并没有像我看到的那样正确删除档案,一些非常旧的档案仍然存在..
如何正确删除它们?
我应该运行 crosscheck archivelog 吗?然后再次运行上面的命令?什么是正确的方法?
谢谢!
为了删除它们,您可以这样做:RMAN>crosscheck archivelog all;
RMAN>delete noprompt expired archivelog all;
,您也可以在delete input
备份它们时包含该子句,它们将在备份后被删除(由您决定)。您可以尝试运行您手动显示的命令以查看 RMAN 中会发生什么(换句话说,它是否有效或是否给出错误)。
如果 RMAN 不知道磁盘上的存档(是从其他位置复制的),那么您可以通过 catalog 命令告诉 RMAN 有关存档文件的信息:
RMAN> CATALOG START WITH '/disk2/archlog' NOPROMPT;
Run Code Online (Sandbox Code Playgroud)
然后运行您的归档日志备份:
RMAN> backup check logical as compressed backupset (archivelog all delete all input);
Run Code Online (Sandbox Code Playgroud)