Saturday, July 2, 2022

Sample RMAN backup script



	
#!/bin/bash
#Declare your environment variables
#export ORACLE_SID=
#export ORACLE_HOME=
#export PATH=$PATH:${ORACLE_HOME}/bin
#export LD_LIBRARY_PATH=${ORACLE_HOME}/bin/lib

dd=`date '+%d-%h-%Y'`
mkdir -p /backup_location/$dd
touch /backup_location/$dd/rmanbkup_$dd.log
echo rman backup for PROD started `date` > /backup_location/$dd/rmanbkup_$dd.log

/oracle/db_software/bin/rman target=/ << EOF >> /backup_location/$dd/rmanbkup_$dd.log
CONFIGURE CONTROLFILE AUTOBACKUP ON;
allocate channel for maintenance type disk;
CONFIGURE RETENTION POLICY TO REDUNDANCY 1;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/backup_location/$dd/autobackup_control_file%F';
run {
ALLOCATE CHANNEL RMAN_BACK_CH01 TYPE DISK;
ALLOCATE CHANNEL RMAN_BACK_CH02 TYPE DISK;
ALLOCATE CHANNEL RMAN_BACK_CH03 TYPE DISK;
ALLOCATE CHANNEL RMAN_BACK_CH04 TYPE DISK;
ALLOCATE CHANNEL RMAN_BACK_CH05 TYPE DISK;
ALLOCATE CHANNEL RMAN_BACK_CH06 TYPE DISK;
ALLOCATE CHANNEL RMAN_BACK_CH07 TYPE DISK;
ALLOCATE CHANNEL RMAN_BACK_CH08 TYPE DISK;
ALLOCATE CHANNEL RMAN_BACK_CH09 TYPE DISK;
ALLOCATE CHANNEL RMAN_BACK_CH10 TYPE DISK;
ALLOCATE CHANNEL RMAN_BACK_CH11 TYPE DISK;
ALLOCATE CHANNEL RMAN_BACK_CH12 TYPE DISK;
ALLOCATE CHANNEL RMAN_BACK_CH13 TYPE DISK;
ALLOCATE CHANNEL RMAN_BACK_CH14 TYPE DISK;
ALLOCATE CHANNEL RMAN_BACK_CH15 TYPE DISK;
CROSSCHECK BACKUP;
BACKUP AS COMPRESSED BACKUPSET DATABASE FORMAT '/backup_location/$dd/databasefiles_%d_%u_%s_%T';
sql 'ALTER SYSTEM ARCHIVE LOG CURRENT';
BACKUP AS COMPRESSED BACKUPSET ARCHIVELOG ALL FORMAT '/backup_location/$dd/archivelogs_%d_%u_%s_%T';
BACKUP AS COMPRESSED BACKUPSET CURRENT CONTROLFILE FORMAT '/backup_location/$dd/controlfile_%d_%u_%s_%T';
RELEASE CHANNEL RMAN_BACK_CH01;
RELEASE CHANNEL RMAN_BACK_CH02;
RELEASE CHANNEL RMAN_BACK_CH03;
RELEASE CHANNEL RMAN_BACK_CH04;
RELEASE CHANNEL RMAN_BACK_CH05;
RELEASE CHANNEL RMAN_BACK_CH06;
RELEASE CHANNEL RMAN_BACK_CH07;
RELEASE CHANNEL RMAN_BACK_CH08;
RELEASE CHANNEL RMAN_BACK_CH9;
RELEASE CHANNEL RMAN_BACK_CH10;
RELEASE CHANNEL RMAN_BACK_CH11;
RELEASE CHANNEL RMAN_BACK_CH12;
RELEASE CHANNEL RMAN_BACK_CH13;
RELEASE CHANNEL RMAN_BACK_CH14;
RELEASE CHANNEL RMAN_BACK_CH15;
}
EXIT;
EOF

    




No comments:

Post a Comment