오라클/Tip

AIX OS 재부팅 시 Oracle DB, Listener 자동 구동 설정

빵순이^^ 2011. 4. 26. 11:57

1. DB 자동 구동 설정


vi 에디터로 /etc 디렉토리 하위에 dbora 스크립트 파일을 생성하여 아래 내용을 복사해서 붙여넣어줍니다.

#! /bin/sh -x
#
# Change the value of ORACLE_HOME to specify the correct Oracle home
# directory for your installation.

ORACLE_HOME=/oracle/product/10.2.0
#
# Change the value of ORACLE to the login name of the
# oracle owner at your site.
#
ORACLE=oracle

PATH=${PATH}:$ORACLE_HOME/bin
HOST=`hostname`
PLATFORM=`uname`
export ORACLE_HOME PATH
#
if [ ! "$2" = "ORA_DB" ] ; then
if [ "$PLATFORM" = "HP-UX" ] ; then
remsh $HOST -l $ORACLE -n "$0 $1 ORA_DB"
exit
else
rsh $HOST -l $ORACLE $0 $1 ORA_DB
exit
fi
fi
#
case $1 in
'start')
$ORACLE_HOME/bin/dbstart $ORACLE_HOME &
;;
'stop')
$ORACLE_HOME/bin/dbshut $ORACLE_HOME &
;;
*)
echo "usage: $0 {start|stop}"
exit
;;
esac
#
exit

위 내용을 추가 한 후 'ORACLE_HOME'과 'ORACLE' 항목을 시스템에 맞도록 수정해 줍니다.


저장하고 나온 후 dbora 파일의 group과 권한을 다음과 같이 수정합니다.

# chgrp dba /etc/dbora
# chmod 750 /etc/dbora

OS 부팅 및 종료 시 runlevel 2 단계에서 자동으로 dbora 스크립트가 실행되도록 심볼릭 링크를 /etc/rc.d/rc2.d/ 하위에 생성하여 줍니다.
'S'로 시작하는 파일은 부팅시 바로 뒤 숫자값 순서대로 'start' 옵션으로 기동되고 'K'로 시작되는 파일은 OS shutdown시 뒤의 숫자값 순서대로 'stop' 옵션으로 기동됩니다.

# ln -s /etc/dbora /etc/rc.d/rc2.d/S99dbora
# ln -s /etc/dbora /etc/rc.d/rc2.d/K01dbora

/etc/hosts.equiv 파일을 vi 에디터로 열어 아래의 내용을 추가해 줍니다.

host root

2. Listener 자동 구동 설정


vi 에디터로 /etc 디렉토리 하위에 dblsn 스크립트 파일을 생성하여 아래 내용을 복사해서 붙여넣어줍니다.

#! /bin/sh -x
#
# Change the value of ORACLE_HOME to specify the correct Oracle home
# directory for your installation.

ORACLE_HOME=/oracle/product/10.2.0
#
# Change the value of ORACLE to the login name of the
# oracle owner at your site.
#
ORACLE=oracle

PATH=${PATH}:$ORACLE_HOME/bin
HOST=`hostname`
PLATFORM=`uname`
export ORACLE_HOME PATH
#
if [ ! "$2" = "ORA_DB" ] ; then
if [ "$PLATFORM" = "HP-UX" ] ; then
remsh $HOST -l $ORACLE -n "$0 $1 ORA_DB"
exit
else
rsh $HOST -l $ORACLE $0 $1 ORA_DB
exit
fi
fi
#
case $1 in
'start')
$ORACLE_HOME/bin/lsnstart $ORACLE_HOME &
;;
'stop')
$ORACLE_HOME/bin/lsnstop $ORACLE_HOME &
;;
*)
echo "usage: $0 {start|stop}"
exit
;;
esac
#
exit

oracle 유저로 접속하여 $ORACLE_HOME/bin 디렉토리에 listener를 구동 및 종료를 위한 lsnstart, lsnstop 스크립트 파일을 생성합니다.


 lsnstart 스크립트 생성

#
# Startup the oracle listener
#
export PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$HOME/bin:/usr/bin/X11:/sbin:
export ORACLE_BASE=/oracle
export ORACLE_HOME=/oracle/product/10.2.0
export ORACLE_SID=orcl
/bin/su oracle -c $ORACLE_HOME/bin/lsnrctl start

lsnstop 스크립트 생성

#
# Stop the oracle listener
#
export PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$HOME/bin:/usr/bin/X11:/sbin:
export ORACLE_BASE=/oracle
export ORACLE_HOME=/oracle/product/10.2.0
export ORACLE_SID=orcl
/bin/su oracle -c $ORACLE_HOME/bin/lsnrctl stop

스크립트 파일로 구동될 수 있도록 권한을 변경합니다.

$ chmod 750 $ORACLE_HOME/bin/lsnstart
$ chmod 750 $ORACLE_HOME/bin/lsnstop

root 유저로 OS 부팅 및 종료 시 runlevel 2 단계에서 자동으로 dblsn 스크립트가 실행되도록 심볼릭 링크를 /etc/rc.d/rc2.d/ 하위에 생성하여 줍니다.

# ln -s /etc/dblsn /etc/rc.d/rc2.d/S97dblsn
# ln -s /etc/dblsn /etc/rc.d/rc2.d/K03dblsn

이제 AIX 시스템에서 OS 부팅 및 종료시에 Oracle database 및 Listener가 재구동 되도록 설정이 완료 되었습니다.


참조 :

http://www.dbforums.com/unix-shell-scripts/1616575-auto-start-oracle-listener-aix-system-startup.html

AIX서버에서 DB 서버 재부팅 시 oracle 및 listener 가 자동으로 구동 및 종료 되도록 설정 할 필요가 있어 위 사이트를 참조하여 정리해 보았습니다.

그런데.. 설정 후 실제 운영되고 있는 서버라 아직 테스트 해보지는 못했습니다.

위 방법대로 설정하신 후 혹 제대로 안되시거나 잘못된 부분이 있으면 댓글 달아주세요~

'오라클 > Tip' 카테고리의 다른 글

오라클10g Enterprise Manager 복구방법  (0) 2011.06.03
Oracle 10g Kernel Parameter 환경변수 설정  (0) 2010.09.07
Buffer cache hit ratio  (0) 2010.09.07
Linux에서 Raw Device 사용  (0) 2010.08.30
UNIX에서 Raw Device 사용  (0) 2010.08.30