oracle rman备份与恢复 全量备份、增量备份

vi rmanfull.sh

!/bin/bash

source /etc/profile
DAY_TAG=date +"%Y-%m-%d"
week=date +%W
backdir1=/home/oracle/backup/"week" mkdir -pbackdir1
rman target / nocatalog msglog /home/oracle/backup/log/fullback_$DAY_TAG.log<<EOF
run{
crosscheck backup;
delete noprompt expired backup;
allocate channel d1 type disk;

allocate channel d1 type disk maxpiecesize = 3500M;

allocate channel d2 type disk maxpiecesize = 3500M;

backup incremental level 0 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;

}
EOF

vi rmanincreme.sh

!/bin/bash

source /etc/profile
DAY_TAG=date +"%Y-%m-%d"
week=date +%W
backdir1=/home/oracle/backup/"week" mkdir -pbackdir1
rman target / nocatalog msglog /home/oracle/backup/log/incremental_$DAY_TAG.log<<EOF
run{
crosscheck backup;
delete noprompt expired backup;
allocate channel d1 type disk;

allocate channel d1 type disk maxpiecesize = 3500M;

allocate channel d2 type disk maxpiecesize = 3500M;

backup incremental level 1 as compressed backupset database format 'backdir1/increme_%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;

}
EOF

crontab -e

0 4 * * 0 bash rmanfull.sh
0 4 * * 1-6 bash rmanincreme.sh

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容