我的RMAN备份存在问题。很抱歉,如果这是一个基本问题,但我对RMAN备份的经验不足。
RMAN脚本和备份过程由最初安装数据库的人员设置。 它应该每天上午12:05和下午12:05进行增量备份,并且每三天进行一次完整备份。
备份随着时间的推移变得越来越大,通常比我的数据文件大得多。即使做得很少,每天也会增加100Mb(见下表)。
如果每3天运行一次完整备份,那么为什么要保留增量备份并且事情会随着时间的推移而变得越来越大?当然,每3天应该重置增量备份并且备份文件夹达到稳定的状态大小?
下面的一些细节
备份文件夹大小和日期
Date Size
22-Jun 250Mb
23-Jun 161Mb
24-Jun 368Mb
25-Jun 450Mb
26-Jun 500Mb
27-Jun 1Gb
28-Jun 1.4Gb
29-Jun 1.3Gb
30-Jun 1.5Gb
01-Jul 1.62Gb
02-Jul 1.7Gb
03-Jul 1.8Gb
04-Jul 1.9Gb
05-Jul 2.3Gb
06-Jul 2.55Gb
07-Jul 2.64Gb
08-Jul 3.2Gb
数据库上可能有很多行删除和插入,但总体上行数大致相同。
如果我这样做
SELECT * FROM V$RECOVERY_FILE_DEST
显示
Name - /u02/fast_recovery_area
Space limit 42949672960
Space used 32024304640
Space reclaimable 1786222080
Number_of_files 177
如果我做了
export ORACLE_SID=CS2DB
rman target sys/sys
delete backup completed before 'sysdate -7';
删除超过7天的所有备份,但2014-06-22中的第一个备份除外(下次运行下面的RMAN脚本时将其删除)。
SELECT * FROM V$RECOVERY_FILE_DEST
删除sysdate-7后显示..
Space limit 42949672960
Space used 23694853120
Space reclaimable 1786222080
我的rman备份脚本是
#!/bin/sh
. /home/oracle11/.bash_profile
CURR_DATE=`date +%u`
$ORACLE_HOME/bin/rman target / nocatalog log=/home/oracle11/script/log/rman_alo_$CURR_DATE.log << EOF
RUN {
allocate channel ch1 type disk;
RECOVER COPY OF DATABASE WITH TAG "fra_incr_backup_3d" UNTIL TIME 'SYSDATE - 3';
BACKUP INCREMENTAL LEVEL 1 FOR RECOVER OF COPY WITH TAG "fra_incr_backup_3d" DATABASE plus archivelog;
delete noprompt obsolete;
release channel ch1;
}
exit;
EOF
RMAN保留政策为7天。
如果每3天运行一次完整备份,那么为什么要保留增量备份并且事情会随着时间的推移而变得越来越大?当然每3天增量应重置一次?
为什么不每7天删除一次备份?
答案 0 :(得分:1)
您不会删除已归档的日志文件,并且每次都要备份它们。
添加类似
的内容backup archivelog all not backed up 1 times;
delete noprompt archivelog all completed before 'sysdate -7';