R12.2 Apps DBA. Powered by Blogger.

RMAN Scripts

No comments :
[orAPPROD@apdba01 rman]$ cat /home/orAPPROD/scripts/rman/APPROD_rman_lvl0.sh
#!/bin/ksh
# Script: APPROD_rman_lvl0.sh
# Purpose: Run an rman script and log it.
# Modifications:
#  20140720 APDBA Created
#  20140805 APDBA Modified : Included the backup to use RMAN catalog database

if [[ $# != 2 ]]; then
  print "Wrong number of arguments."
  print "Usage: $0 <GLOBAL_NAME> <INSTANCE>
  print "     : $0     APPROD        1
  exit 1
fi

ORACLE_HOME=/d01/app/oracle/APPROD/product/11.2.0
GLOBAL_NAME=$1
INSTANCE=$2
SCRIPT=INC_LVL_0
NOTIFY=APDBA_dba_alerts@APDBA.com,apdba.blogspot@gmail.com
HOST_NAME=`hostname -s`

. $ORACLE_HOME/${GLOBAL_NAME}_${HOST_NAME}.env

TODAY=$(date '+%a')
DATE_NOW=$(date '+%C%y%m%d')
TIME_NOW=$(date '+%H%M%S')
#LOG=/d01/app/oracle/APPROD/product/11.2.0/admin/APPROD_apdba01/udump/run_rman_script.${SCRIPT}.${DATE_NOW}${TIME_NOW}.log
LOG=$ORACLE_HOME/admin/${GLOBAL_NAME}_${HOST_NAME}/udump/APPROD_rman_lvl0.${SCRIPT}.${DATE_NOW}${TIME_NOW}.log
BACKUP_DIR=/backupdb/APPROD/RMAN/level0
date > ${LOG}

echo "ORACLE_SID  : " ${ORACLE_SID} >> ${LOG}
echo "ORACLE_HOME : " ${ORACLE_HOME} >> ${LOG}
echo "SCRIPT      : " ${SCRIPT} >> ${LOG}

rman << EOF >> ${LOG} 2>&1
connect target /
connect catalog rman/rmanpass@rman
sql "alter session set optimizer_mode=RULE";
run {
allocate channel c21 device type disk;
allocate channel c22 device type disk;
allocate channel c23 device type disk;
allocate channel c24 device type disk;
allocate channel c25 device type disk;
sql 'alter system archive log current';
backup as compressed backupset incremental level 0 tag LEVEL0_BACKUP filesperset 4 format '${BACKUP_DIR}/%d_INC0_%Y%M%D_%t_%s' database;
sql 'alter system archive log current';
backup as compressed backupset format '${BACKUP_DIR}/%d_ARC_%Y%M%D_%t' archivelog all not backed up 1 times delete all input;
copy current controlfile to '/backupdb/APPROD/RMAN/control_backup/%d_control_file_%Y%M%D_%t_%s';
report obsolete;
delete noprompt obsolete;
}
list backup summary;
exit
EOF

STATUS=$?

date >> ${LOG}

if [[ ${STATUS} != 0 ]]; then
  mailx -r orAPPROD@apdba01.apdbablog.com -s "RMAN Script ${SCRIPT} Failed for ${ORACLE_SID}." ${NOTIFY} < ${LOG} > /dev/null 2>&1
else
  mailx -r orAPPROD@apdba01.apdbablog.com -s "RMAN Script ${SCRIPT} Completed Successfully for ${ORACLE_SID}." ${NOTIFY}  < ${LOG} > /dev/null 2>&1
fi

exit ${STATUS}

[orAPPROD@apdba01 rman]$
[orAPPROD@apdba01 rman]$ cat /home/orAPPROD/scripts/rman/APPROD_rman_arc.sh
#!/bin/ksh
# Script: APPROD_rman_arc.sh
# Modifications:
#  20140721 APDBA Created
#  20140805 APDBA Modified : Included the backup to use RMAN catalog database

if [[ $# != 2 ]]; then
  print "Wrong number of arguments."
  print "Usage: $0 <GLOBAL_NAME> <INSTANCE>
  print "     : $0     APPROD        1
  exit 1
fi

ORACLE_HOME=/d01/app/oracle/APPROD/product/11.2.0
GLOBAL_NAME=$1
INSTANCE=$2
SCRIPT=ARCHIVE_BKP
NOTIFY=APDBA_dba_alerts@APDBA.com,apdba.blogspot@gmail.com
HOST_NAME=`hostname -s`

. $ORACLE_HOME/${GLOBAL_NAME}_${HOST_NAME}.env

TODAY=$(date '+%a')
DATE_NOW=$(date '+%C%y%m%d')
TIME_NOW=$(date '+%H%M%S')
#LOG=/d01/app/oracle/APPROD/product/11.2.0/admin/APPROD_apdba01/udump/run_rman_script.${SCRIPT}.${DATE_NOW}${TIME_NOW}.log
LOG=$ORACLE_HOME/admin/${GLOBAL_NAME}_${HOST_NAME}/udump/APPROD_rman_arc.${SCRIPT}.${DATE_NOW}${TIME_NOW}.log
BACKUP_DIR=/backupdb/APPROD/RMAN/archive
date > ${LOG}

echo "ORACLE_SID  : " ${ORACLE_SID} >> ${LOG}
echo "ORACLE_HOME : " ${ORACLE_HOME} >> ${LOG}
echo "SCRIPT      : " ${SCRIPT} >> ${LOG}

rman << EOF >> ${LOG} 2>&1
connect target /
connect catalog rman/rman0617@rman
sql "alter session set optimizer_mode=RULE";
run {
allocate channel c1 device type disk;
sql 'alter system archive log current';
sql 'alter system checkpoint';
backup as compressed backupset format '${BACKUP_DIR}/%d_ARC_%Y%M%D_%t_%s' archivelog all delete input;
release channel c1;
}
list backup summary;
exit
EOF

STATUS=$?
date >> ${LOG}

if [[ ${STATUS} != 0 ]]; then
  mailx -r orAPPROD@apdba01.apdbablog.com -s "RMAN Script ${SCRIPT} Failed for ${ORACLE_SID}." ${NOTIFY} < ${LOG} > /dev/null 2>&1
else
  mailx -r orAPPROD@apdba01.apdbablog.com -s "RMAN Script ${SCRIPT} Completed Successfully for ${ORACLE_SID}." ${NOTIFY}  < ${LOG} > /dev/null 2>&1
fi

exit ${STATUS}

[orAPPROD@apdba01 rman]$

No comments :

Post a Comment

Note: only a member of this blog may post a comment.