#!/bin/bash # ---------------------------------- # 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 v_res=`grep "${w_instance}:" /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} echo $ORACLE_SID # export NLS_DATE_FORMAT=YYYY.MM.DD.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;
sqlplus /nolog <<EOSQL >>$w_log_file 2>&1 WHENEVER SQLERROR EXIT SQL.SQLCODE connect / as sysdba ALTER SYSTEM ARCHIVE LOG CURRENT; exit