행위

Aix oracle shell 환경

DB CAFE

Dbcafe (토론 | 기여)님의 2019년 12월 4일 (수) 12:39 판 (새 문서: == AIX 용 오라클 쉘 환경 스크립트 == <source lang=ksh> #!/usr/bin/ksh ######################################################################################### ## setoraenv...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)
thumb_up 추천메뉴 바로가기


AIX 용 오라클 쉘 환경 스크립트[편집]

<source lang=ksh>

  1. !/usr/bin/ksh
    1. setoraenv : Set environment for ORACLE 10g ~ 12c (AIX ksh)
    2. Usage : . setoraenv [db number]
    3. BASE PATHs

if [ "$BASE_PATH" == "" ]; then export BASE_PATH=$PATH; fi if [ "$BASE_LIB_PATH" == "" ]; then export BASE_LIB_PATH=$LD_LIBRARY_PATH; fi if [ "$BASE_CLASSPATH" == "" ]; then export BASE_CLASSPATH=$CLASSPATH; fi

    1. BASIC SETTING

export HOSTNAME=$(hostname) PS1='[$ORACLE_SID@$HOSTNAME:$LOGNAME:$PWD] $ '

    1. ORACLE_SID:ORACLE_HOME:DB_NAME:VERSION:[ORACLE_BASE_PREFIX]
    2. ORACLE_BASE LIST

ORA_BASE_DEFAULT=/oracle/app/oracle ORA_BASE_V1220=/oracle/app/oracle ORACLE_HOME=$ORACLE_BASE/product/12.2.0/db_home

    1. ORACLE DB LIST

ORACLE_LIST=" \nRTISP2:$ORACLE_HOME:xxxp:12.2.0 \nRTISMIG2:$ORACLE_HOME:xxxmig:12.2.0:$ORA_BASE_V1220 "

while true do

   printf "\n"
   echo "  ORACLE_SID LIST on This SERVER "
   echo "  -----------------------------------------------------------------"
   #awk  -F":" '/^[a-zA-Z+]/ && /:/ {inum++; printf "\t[%3s] ... %-8s (%s)\n",inum, $1,$2}' $ORA_TAB
   echo $ORACLE_LIST | awk  -F":" '/^[a-zA-Z+]/ && /:/ {inum++; printf "      [%1s] %-10s (%s)\n",inum, $1,$2}'
   echo "  -----------------------------------------------------------------"
   printf "  Please select Number for DATABASE($ORACLE_SID) or Q(Quit) : "
   if [ $# -eq 1 ]
   then
       echo $1;
       ans=$1;
       shift;  # remove param value;
   else
       read ans
   fi
   if [ "$ans" = "q" -o "$ans" = "Q" ]; then  return 0;
   elif [ "$ans" != "" ]
   then
       #ORACLE_SID=$(awk -F":" -v selnum=$ans '/^[a-zA-Z+]/ && /:/ {inum++; if(inum == selnum) print $1}' $ORA_TAB)
       ORACLE_SID=$(echo $ORACLE_LIST | awk -F":" -v selnum=$ans '/^[a-zA-Z+]/ && /:/ {inum++; if(inum == selnum) print $1}')
       #ORACLE_HOME=$(awk -F":" -v selnum=$ans '/^[a-zA-Z+]/ && /:/ {inum++; if(inum == selnum) print $2}' $ORA_TAB)
       ORACLE_HOME=$(echo $ORACLE_LIST | awk -F":" -v selnum=$ans '/^[a-zA-Z+]/ && /:/ {inum++; if(inum == selnum) print $2}')
       ORACLE_DBNAME=$(echo $ORACLE_LIST | awk -F":" -v selnum=$ans '/^[a-zA-Z+]/ && /:/ {inum++; if(inum == selnum) print $3}')
       ORACLE_VER=$(echo $ORACLE_LIST | awk -F":" -v selnum=$ans '/^[a-zA-Z+]/ && /:/ {inum++; if(inum == selnum) print $4}')
       ORACLE_BASE=$(echo $ORACLE_LIST | awk -F":" -v selnum=$ans '/^[a-zA-Z+]/ && /:/ {inum++; if(inum == selnum) print $5}')
       if [ "${ORACLE_SID}" != "" ]; then   break; fi;
   fi

done

if [ "${ORACLE_SID}" = "" ] then

   echo "CHECK ERR: ORACLE SID is not set !!\n"
   return 1  # exit 1

fi if [ "${ORACLE_BASE}" = "" ] then

   ORACLE_BASE=$ORA_BASE_DEFAULT;

fi


    1. oracle env

export ORACLE_BASE export ORACLE_HOME export ORACLE_SID

export ORACLE_DBNAME=$(echo $ORACLE_DBNAME | tr A-Z a-z) export ORACLE_DIAG_HOME=$ORACLE_BASE/diag/rdbms/$ORACLE_DBNAME/$ORACLE_SID

  1. export ORACLE_DBNAME=$(echo $ORACLE_SID|tr "[:upper:]" "[:lower:]") ## ksh

export ORACLE_OWNER=oracle export TEMP=/oracle/tmp export TMPDIR=$TEMP export TMP=$TEMP

    1. export TNS_ADMIN=$ORACLE_HOME/network/admin
    2. export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data

export NLS_LANG=American_america.AL32UTF8

export PATH=.:$ORACLE_HOME/bin:$GRID_HOME/bin:$BASE_PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/network/lib:/usr/lib:$BASE_LIB_PATH export LIBPATH=$LD_LIBRARY_PATH

    1. alias

alias ll='ls -la' alias cdw='cd ~/dbwork' alias dbwork='cd ~/dbwork' alias loop='while true; do printf .; sleep 5; done;'

    1. for oracle work
    2. if [ "$ORACLE_VER" -gt "11" ]

if [ "$ORACLE_VER" \> "11" ] then

   alias bdump='cd $ORACLE_DIAG_HOME/trace'
   alias udump='cd $ORACLE_DIAG_HOME/trace'
   alias alert='tail -f $ORACLE_DIAG_HOME/trace/alert_$ORACLE_SID.log'

else

   alias bdump='cd $ORACLE_BASE/admin/$ORACLE_SID/bdump'
   alias udump='cd $ORACLE_BASE/admin/$ORACLE_SID/udump'
   alias alert='tail -f $ORACLE_BASE/admin/$ORACLE_SID/bdump/alert_$ORACLE_SID.log'

fi

alias ss="sqlplus '/as sysdba'" alias dbs='cd $ORACLE_HOME/dbs' alias oh='cd $ORACLE_HOME' alias tns='cd $TNS_ADMIN' alias ob='cd $ORACLE_BASE' alias explog='cd $ORACLE_HOME/rdbms/log' </script>