Thursday, May 28, 2009

Script to take backup of database stack

This script can be used to take a backup of the database stack. A database backup purge script is given in the next post which can be used with this script.

=====================================================

DATE=`date +%d%b%y_%H_%M_%S`
LOGFILE='/t2/backups/logs/dbtech_backup_'${DATE}'.log'
ORACLE_BASE=/t2/oracle
ORACLE_HOME=/t2/oracle/PROD/db/tech_st/10.2.0
ORACLE_SID=PROD
WORK=/t2/scripts
EXEC_DIR=/t2/scripts
export ORACLE_BASE ORACLE_SID ORACLE_HOME
TNS_ADMIN=$ORACLE_HOME/network/admin/PROD_perp
SHELL=/usr/bin/ksh
LD_LIBRARY_PATH=/usr/lib:$ORACLE_HOME/lib
export TNS_ADMIN SHELL LD_LIBRARY_PATH
PATH=$PATH:/usr/bin:/usr/sbin:/usr/local/bin:/usr/lib:/etc:$ORACLE_HOME/bin:$LD_LIBRARY_PATH
export PATH
TERM=vt100
export TERM
NLS_LANG=American_America.UTF8
export NLS_LANG
APPS_PASSWD=`cat apps_pass.txt`
echo $APPS_PASSWD perl /t2/oracle/PROD/db/tech_st/10.2.0/appsutil/scripts/PROD_perp/adpreclone.pl dbTier >> $LOGFILE # 781539.1
tar -czvf /t2/backups/dbtech/PROD_db_${DATE}.tgz $ORACLE_HOME >> $LOGFILE
returncode=$?
echo $returncode return code >> $LOGFILE
date >> $LOGFILE
if [ $returncode -ne 0 ]; then
for address in `cat $EXEC_DIR/mail_list`
do
if [ "`echo $address cut -c1`" != "#" ]; then
tail -n 100 $LOGFILE mail -s "TAR Database Techstack Backup Failure Log" $address echo "TAR Database Techstack Backup Failure Log" >> $LOGFILE
fi
done
else
for address in `cat $EXEC_DIR/mail_list`
do
if [ "`echo $address cut -c1`" != "#" ]; then
tail -n 100 $LOGFILE mail -s "TAR Database Techstack Backup Successful Log" $address echo "TAR Database Techstack Backup Successful Log" >> $LOGFILE
fi
done
fi
=====================================================

No comments: