source /home/oracle/.bash_profile
export ORACLE_SID=ecology
export BACKUP_DIR=/home/oracle/backup/backupsets
export RMAN_SCRIPTS=$BACKUP_DIR/scripts
export RMAN_BACKUPSETS=$BACKUP_DIR/ecology
export RMAN_LOG=$BACKUP_DIR/logs/rman_$ORACLE_SID.log
echo 'Starting Full Database Backup at '`date +%Y-%m-%d%t%H:%M:%S` >>$RMAN_LOG
rman target=/ log $RMAN_LOG append <<EOF
set echo on;
CONFIGURE DEFAULT DEVICE TYPE TO DISK;
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '$RMAN_BACKUPSETS/$ORACLE_SID-%U.rman';
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE COMPRESSION ALGORITHM 'HIGH';
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '$RMAN_BACKUPSETS/$ORACLE_SID-%F.ctl';
CONFIGURE RETENTION POLICY TO REDUNDANCY 3;
run{
allocate channel c1 device type disk;
allocate channel c2 device type disk;
allocate channel c3 device type disk;
#allocate channel c4 device type disk;
#allocate channel c5 device type disk;
#allocate channel c6 device type disk;
#allocate channel c7 device type disk;
#allocate channel c8 device type disk;
cd backup as compressed backupset database format '$RMAN_BACKUPSETS/$ORACLE_SID-%U.db'
plus
archivelog format '$RMAN_BACKUPSETS/$ORACLE_SID-%U.arc' delete all input;
}
list backup summary;
list backup by file;
crosscheck archivelog all;
crosscheck backupset;
delete noprompt obsolete;
delete noprompt expired backupset;
exit;
EOF
echo ''>>$RMAN_LOG
echo 'End Full Database Backup at '`date +%Y-%m-%d%t%H:%M:%S` >>$RMAN_LOG
echo ''>>$RMAN_LOG
sleep 5
time bash rman.sh
本文介绍了一个用于Oracle数据库的完整备份脚本。该脚本配置了RMAN以执行全库备份,包括压缩备份集、归档日志备份及清理过期备份等功能,并记录操作日志。
806

被折叠的 条评论
为什么被折叠?



