一、问题描述
由于服务器配置不高,备份策略为周末全备、周一至周六差异备份。
平时服务器CPU使用30%左右。
全备份时,开启两个通道,CPU达到70%-80%左右,业务不卡顿、不掉单,session不积压,磁盘读取80MB/s
差异备份时,开启两个通风道,CPU达到100%,业务卡顿、掉单,session积压,磁盘读取200MB/s
如下图:
二、控制RMAN的备份时间--duration和关键字minimize load
限制rman备份时间在5min以最小负载方式完成,语法如下:
RMAN> backup duration 00:05 minimize load
database
format
'/home/oracle/backup/%U.dbf'
;
三、控制RMANIO消耗--rate readrate
控制差异备份IO读取速度
run{
crosscheck backup;
delete noprompt expired backup;
allocate channel d1 type disk maxpiecesize = 3500M rate 50M; /60M ----设置磁盘读取为50M/s/60M/s
allocate channel d2 type disk maxpiecesize = 3500M rate 50M; /60M
#crosscheck archivelog all;
#delete noprompt expired archivelog all;
#crosscheck backup;
#delete noprompt expired backup;
backup incremental level 1 as compressed backupset database format '$backdir1/full_%d_%T_%t_%s_%p';
sql 'alter system archive log current';
backup as compressed backupset filesperset 10 format '$backdir1/arch_%d_%T_%t_%s_%p' archivelog all;
backup current controlfile format '$backdir1/ctl_%d_%T_%t_%s_%p';
release channel d1;
release channel d2;
#report obsolete;
#delete noprompt obsolete;
}