sauve_hot.sh

#!/bin/bash
# ==================================================
# Nom : sauve_backup.sh
# Objet : sauvegarde RMAN d'une base complete
# Auteur : S. GOURGAND - DIGORA
# Cree le : 28/01/2010
# Syntaxe : sauve_backup.sh database_name
# ==================================================
# ----------------------------------
# Fonction d'affichage de la syntaxe
# ----------------------------------
syntaxe()
{
 echo "Usage : $0 database_name"
}
# --------------------------
# Verification de la syntaxe
# --------------------------
if [ $# -ne 1 ]
then
 echo "=================================================="
 echo "ERREUR : Nombre d'arguments incorrects !"
 syntaxe
 echo "=================================================="
 exit 1
fi
# --------------------------
# Verification des arguments
# --------------------------
w_instance=$1
[ "${HOSTNAME}" = "king" -o "${HOSTNAME}" = "king.faiveley.com" ] && w_num=1
[ "${HOSTNAME}" = "kong" -o "${HOSTNAME}" = "kong.faiveley.com" ] && w_num=2
[ "${HOSTNAME}" = "ping" -o "${HOSTNAME}" = "ping.faiveleytransport.local" ] && w_num=3
[ "${HOSTNAME}" = "pong" -o "${HOSTNAME}" = "pong.faiveleytransport.local" ] && w_num=4
v_res=`grep "${w_instance}${w_num}:" /etc/oratab | wc -l`
v_res=`expr ${v_res}`
if [ ${v_res} -eq 0 ]
then
 echo "=================================================="
 echo "ERREUR : Base de donnees [${w_instance}] inexistante !"
 syntaxe
 echo "=================================================="
 exit 1
fi
export ORACLE_SID=${w_instance}${w_num}
echo instance : ${ORACLE_SID}
# export NLS_DATE_FORMAT=YYYY.MM.DD.HH24.MI.SS
export NLS_DATE_FORMAT="DD/MM/YYYY HH24:MI:SS"
w_prog=`basename $0 .sh`
w_date=$(date '+%Y_%m_%d_%H_%M_%S')
w_log_dest=/exploit/logs
w_log_file=$w_log_dest/${w_date}_${w_prog}_${w_instance}.log;
rman <<EORMAN >${w_log_file} 2>&1
connect target / ;
crosscheck backup;
crosscheck archivelog all;
delete noprompt expired backup;
delete noprompt expired archivelog all;
delete noprompt obsolete;
backup incremental level 0 tag 'database level 0' database plus archivelog tag 'archives level 0';
delete noprompt obsolete;
report need backup;
list backup summary;
exit
EORMAN
# Ajout 08/04/2010 : Envoi du fichier de traces par mail
# ------------------------------------------------------
w_host=`basename $HOSTNAME .faiveley.com`
w_host=`basename ${w_host} .faiveleytransport.local | tr [a-z] [A-Z]`
mail -s "${w_host} : Hot Backup Database ${w_instance}" nicolas.lamotte@faiveleytransport.com <${w_log_file}
# Ajout 31/03/2011 : Traitement des anomalies pour VTOM
# -----------------------------------------------------
v_res=`grep "^RMAN-" ${w_log_file} | wc -l`
v_res=`expr ${v_res}`
if [ ${v_res} -gt 0 ]
then
 echo +----------------------------+
 echo ! DEBUT DU FICHIER DE TRACES !
 echo +----------------------------+
 cat ${w_log_file}
 echo +--------------------------+
 echo ! FIN DU FICHIER DE TRACES !
 echo +--------------------------+
 exit 1
else
 exit 0
fi

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *