rman备份脚本

#!/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/rmandb%d%s%T%p%U.bkupset';
backup current controlfile format '/u01/app/backup/rmancontrol%U.ctl';
backup spfile format '/u01/app/backup/myorclspfile%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/rmanarch%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" [email protected] < temp_oracle_rman.log

猜你喜欢

转载自blog.51cto.com/860143/2413668
今日推荐