rman指令碼

OmarChina發表於2007-10-29
如果有錯誤發生即mail給dba[@more@]#!/bin/bash
#----------------------------------------------
# Either hard code the next 3 variables or
# source them with an oraenv file.
export ORACLE_HOME=/u015/app/oracle/product/8.1.7
export ORACLE_SID=southdb
export PATH=$PATH:$ORACLE_HOME/bin
#----------------------------------------------
export MAILX="/bin/mail"
export MAIL_LIST=""
#----------------------------------------------
export BOX=`uname -a | awk '{print$2}'`
export PRG=`basename $0`
export USAGE="Usage: ${PRG} - "
export RLEV=$1
export RDIR=$2
if [ -z "${RLEV}" -o -z "${RDIR}" ]
then
echo "${USAGE}"
exit 1
fi
echo "Parm 1 -> ${RLEV} : Parm 2 -> ${RDIR}"
#----------------------------------------------
rman nocatalog <connect target sys/biohazard
run {
allocate channel d1 type disk;
setlimit channel d1 kbytes 1900000;
backup incremental level=${RLEV}
tag db_level_${RLEV}
format '${RDIR}/rm_l_${RLEV}_%d_%t_%U.bus'
(database filesperset=25 include current
controlfile);
sql "alter system archive log current";
release channel d1;
}
EOF
#---------------------------------------------
#-- Test for success of RMAN operation
if [ $? -ne 0 ]; then
$MAILX -s "RMAN problem with $ORACLE_SID on $BOX"
$MAIL_LIST <Check level ${RLEV} RMAN backups...
EOF
#
else
printf "RMAN ran okay..."
fi
#----------------------------------------------
exit

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9925929/viewspace-979420/,如需轉載,請註明出處,否則將追究法律責任。

相關文章