Gar*_*eld 6 oracle backup oracle-11g-r2
我被聘来填补一个我还没有准备好填补的 DBA 职位,虽然培训让我到达那里,但我正在接近一个潜在的问题。
我的 oracle 11g 数据库的闪回恢复区 (FRA) 快要满了(还剩 2.5%)。它处于 ARCHIVELOG 模式,因为我们进行实时备份(至少这是我被告知的原因)。我们已经通过企业管理器清除了所有不需要的备份,但存档日志仍然占用超过 50% 的已分配 FRA 空间。是否可以删除一些较旧的存档日志以释放空间?服务器仍然保存几个月前的日志,我们真的不需要那么远的备份。
如果我可以删除它们,最好的方法是什么?
小智 5
Oracle 会自动删除过时的文件。通常,您不必手动删除任何内容。
RMAN 维护的一个重要部分是删除不再需要的备份。如果配置了快速恢复区,那么数据库会自动删除该区不需要的文件
首先,确定您的空间是否不足。例如使用以下查询(包括示例输出):
SELECT * FROM V$RECOVERY_FILE_DEST;
NAME SPACE_LIMIT SPACE_USED SPACE_RECLAIMABLE NUMBER_OF_FILES
-------------- ----------- ---------- ----------------- ---------------
/mydisk/rcva 5368709120 109240320 256000 28
Run Code Online (Sandbox Code Playgroud)
如果空间不足,则必须减少保留策略或增加 FRA 的大小。
小智 3
我强烈建议为此编写一个小型 RMAN 脚本。像这样的东西应该有效:
run {
allocate channel "dsk1" device type disk;
allocate channel "dsk2" device type disk;
crosscheck backup;
crosscheck archivelog all;
delete noprompt expired backup;
delete noprompt expired archivelog all;
report obsolete recovery window of 7 days;
delete noprompt obsolete recovery window of 7 days;
backup as compressed backupset archivelog all;
delete noprompt archivelog until time 'sysdate-1' backed up 1 times to device type disk;
}
Run Code Online (Sandbox Code Playgroud)
解释:
allocate channel <TAG> device type disk;
Run Code Online (Sandbox Code Playgroud)
这些行是可选的,但如果您通过多个物理通道连接到存储,则允许您分配多个通道
crosscheck backup;
crosscheck archivelog all;
Run Code Online (Sandbox Code Playgroud)
这些交叉检查行将根据存储上的内容检查实际的 RMAN 库存(在控制文件中)。不再存储的那些备份和/或存档日志将被标记为“已过期”
delete noprompt expired backup;
delete noprompt expired archivelog all;
Run Code Online (Sandbox Code Playgroud)
这些会删除存储中不匹配的所有库存条目。
report obsolete recovery window of 7 days;
Run Code Online (Sandbox Code Playgroud)
此行会将不再需要将数据库恢复到 7 天前一致状态的任何备份文件标记为“OBSOLETE”
delete noprompt obsolete recovery window of 7 days;
Run Code Online (Sandbox Code Playgroud)
此命令删除所有标记为“OBSOLETE”的文件
backup as compressed backupset archivelog all;
Run Code Online (Sandbox Code Playgroud)
此命令将所有当前存档备份为压缩备份集。
delete noprompt archivelog until time 'sysdate-1' backed up 1 times to device type disk;
Run Code Online (Sandbox Code Playgroud)
此命令将删除所有早于 1 天且已备份的存档。
希望这对您有帮助!
归档时间: |
|
查看次数: |
55829 次 |
最近记录: |