Oracle test script for 12c vm on hyper-v

From MyWiki
Revision as of 21:43, 31 October 2016 by George2 (Talk | contribs)

Jump to: navigation, search
#!/bin/bash
 
 
 
 
echo =========================
echo Backup Started : $(date)
echo =========================
before="$(date +%s)"
### Dont' shutdown oracle as we are doing ONLINE BACKUP
#$ORACLE_HOME/bin/dbshut $ORACLE_HOME >& $ORACLE_HOME/dbshut.log
$ORACLE_HOME/bin/rman target / log=${BACKUP_LOGS} <<EOF
RUN
{
 
         CONFIGURE CONTROLFILE AUTOBACKUP ON;
         CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '${BACKUP_LOCATION}/controlfile_%F';
         allocate CHANNEL m1 TYPE DISK FORMAT '${BACKUP_LOCATION}/database_f%t_s%s_s%p';
         CROSSCHECK BACKUP;
         CROSSCHECK ARCHIVELOG ALL;
         # backup recovery area;  only backup recovery area to local tape drive
         DELETE NOPROMPT FORCE EXPIRED BACKUP;
         DELETE NOPROMPT FORCE EXPIRED ARCHIVELOG ALL;
         DELETE NOPROMPT FORCE OBSOLETE;
         RECOVER copy of database with tag 'incremental_backup' until time 'sysdate-7';
         BACKUP INCREMENTAL LEVEL 1 FOR RECOVER OF COPY WITH TAG 'incremental_backup' DATABASE PLUS ARCHIVELOG delete all input;
         BACKUP CURRENT CONTROLFILE;
         release CHANNEL m1;
}
EXIT
EOF
 
after="$(date +%s)"
elapsed_seconds="$(expr $after - $before)"
echo ""
echo =========================
echo Backup Ended : $(date)
echo =========================
echo Elapsed time: $(date -d "1970-01-01 $elapsed_seconds sec" +%H:%M:%S)
 
 
if grep -q "error" $BACKUP_LOGS 1> /dev/null
then
  echo ""
  echo "Error! RMAN backup error"
  echo "====="
  cat $BACKUP_LOGS
  echo "====="
  ### email us for failure backup with the attachment of the $BACKUP_LOGS
else
  echo ""
  echo "Success RMAN Backup -" .$BACKUP_LOGS
  echo "====="
  cat $BACKUP_LOGS
  echo "====="
  ### email us for successful backup with the attachment of the $BACKUP_LOGS
fi
 
exit