setsid ()
{
unset ORATAB
unset ORACLE_BASE
unset ORACLE_HOME
unset ORACLE_SID
ORACLE_BASE=/u01/app/oracle
ORATAB=/etc/oratab
if tty -s
then
if [ -f $ORATAB ]
then
line_count=`cat $ORATAB | grep -v ^# | sed 's/:.*//' | wc -l`
# check that the oratab file has some contents
if [ $line_count -ge 1 ]
then
sid_selected=0
while [ $sid_selected -eq 0 ]
do
sid_available=0
for i in `cat $ORATAB | grep -v ^# | sed 's/:.*//'`
do
sid_available=`expr $sid_available + 1`
sid[$sid_available]=$i
done
# get the required SID
case ${SETSID_AUTO:-""} in
YES) # Auto set use 1st entry
sid_selected=1 ;;
*)
i=1
while [ $i -le $sid_available ]
do
printf "%2d- %10s\n" $i ${sid[$i]}
i=`expr $i + 1`
done
echo ""
echo "Select the Oracle SID with given number [1]:"
read entry
if [ -n "$entry" ]
then
entry=`echo "$entry" | sed "s/[a-z,A-Z]//g"`
if [ -n "$entry" ]
then
entry=`expr $entry`
if [ $entry -ge 1 ] && [ $entry -le $sid_available ]
then
sid_selected=$entry
fi
fi
else
sid_selected=1
fi
esac
done
#
# SET ORACLE_SID
#
export ORACLE_SID=${sid[$sid_selected]}
echo "Your profile configured for $ORACLE_SID with information below:"
echo ""
export PATH=/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/bin
unset LD_LIBRARY_PATH
ORAENV_ASK=NO
. oraenv
alias oh="cd ${ORACLE_HOME}"
ora_version=`echo $ORACLE_HOME | awk 'BEGIN {FS="/"} ; {print $6}' | awk 'BEGIN {FS="."} ; {print $1}'`
if [ $ora_version -lt 11 ]
then
alias bdump="cd /u01/app/oracle/admin/${ORACLE_SID//[!A-Za-z]}/bdump"
alias talert="tail -f /u01/app/oracle/admin/${ORACLE_SID//[!A-Za-z]}/bdump/alert_${ORACLE_SID}.log"
alias valert="view /u01/app/oracle/admin/${ORACLE_SID//[!A-Za-z]}/bdump/alert_${ORACLE_SID}.log"
fi
if [ $ora_version -ge 11 ]
then
export ORACLE_UNQNAME=$ORACLE_SID
alias talert='tail -f $ORACLE_BASE/`adrci exec="show homes" | grep $ORACLE_SID`/trace/alert_${ORACLE_SID}.log'
alias valert='view $ORACLE_BASE/`adrci exec="show homes" | grep $ORACLE_SID`/trace/alert_${ORACLE_SID}.log'
alias alasm='cd $ORACLE_BASE/`adrci exec="show homes" | grep ASM`/trace'
alias bdump='cd $ORACLE_BASE/`adrci exec="show homes" | grep $ORACLE_SID`/trace'
fi
alias pmon='ps -fu oracle | grep pmon | grep -v grep'
alias tns='ps -fu oracle | grep tns | grep -v grep'
alias oradiag='cd $ORACLE_BASE/diag/'
alias ldiag='cd $ORACLE_BASE/diag/tnslsnr/'
unset ORAENV_ASK
echo
#
#GIVE MESSAGE
#
else
echo "No entries in $ORATAB. no environment set"
fi
fi
fi
}
#SHOWSID