#!/bin/bash
#################################
# backup oracle database
# date: 2019-6-23
#################################
cd /home/oracle
. .bash_profile
cd /home/oracle/scripts
echo "" > temp_oracle_rman.log
date >> temp_oracle_rman.log
echo "" >> temp_oracle_rman.log
rman >> temp_oracle_rman.log << EOF
connect target /
configure retention policy to recovery window of 5 days;
crosscheck backup;
crosscheck copy;
crosscheck backupset;
crosscheck archivelog all;
delete noprompt obsolete;
delete noprompt expired backup;
delete noprompt expired backupset;
delete noprompt expired copy;
delete archivelog all completed before 'sysdate-10';
run{
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
backup as compressed backupset database format '/u01/app/backup/rman_db_%d_%s_%T_%p_%U.bkupset';
backup current controlfile format '/u01/app/backup/rman_control_%U.ctl';
backup spfile format '/u01/app/backup/myorcl_spfile_%U';
release channel c1;
release channel c2;
release channel c3;
}
exit;
EOF
rman >> temp_oracle_rman.log << EOF
connect target /
run{
configure retention policy to recovery window of 5 days;
sql 'alter system archive log current';
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
backup as compressed backupset archivelog all delete input format '/u01/app/backup/rman_arch_%d_%s_%T_%p_%U.bkupset';
release channel c1;
release channel c2;
release channel c3;
}
delete noprompt obsolete;
delete noprompt expired backup;
delete noprompt expired backupset;
delete noprompt expired copy;
delete noprompt obsolete recovery window of 7 days;
#delete backup completed before 'sysdate-7';
exit;
EOF
mail -s "rman message `hostname -i` `hostname`" xingzhenxiang@163.com < temp_oracle_rman.log
本文标题:rman备份脚本
文章源于:
http://cxhlcq.com/article/isjeee.html