Linux üzerinde Oracle’ın otomatik olarak başlatılması

Oracle enterprise linux Release 5,Update 4. Oracle 11g R2 Enterprise versiyonunda uygulanmıştır.
Oracle’ın otomatik başlatılabilir olarak tanımlanması
root kullanıcısında, komut satırına :

vi /etc/oratab  

yazıp, oratab dosyasındaki  oracle_sid:oracle_home:<Y|N> formatında yazılmış satırdaki N’yi Y olarak değiştiriyoruz. Bu  değişiklik oracle’ın otomatik olarak başlatılması için gerekli.

orcl:/u01/app/oracle/product/11.2.0:Y

Ortam değişkenlerinin tanımlanması

vi /home/oracle/.bash_profile

yazıp,
# User specific environment and startup programs
satırından sonraki mavi renkli satırları ekleyiniz.

# .bash_profile


# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

ORACLE_HOSTNAME=localhost.localdomain; export ORACLE_HOSTNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1; export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

if [ $USER = "oracle" ]; then
  if [ $SHELL = "/bin/ksh" ]; then
    ulimit -p 16384
    ulimit -n 65536
  else
    ulimit -u 16384 -n 65536
  fi
fi

Linux’servisinin oluşturulması
Bu kısımda linux’un her açılışında otomatik olarak çalıştıracağı bir dosya oluşturuyoruz.Bu dosya sistemin her  açılışında ve kapanışında çalıştırılacak.

vi /etc/init.d/oracledb

dosya içine

#!/bin/sh
# chkconfig: 345 99 10
# description: Oracle auto start-stop script.
#
# Set ORA_HOME to be equivalent to the $ORACLE_HOME
# from which you wish to execute dbstart and dbshut;
#
# Set ORA_OWNER to the user id of the owner of the
# Oracle database in ORA_HOME.


ORA_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
ORA_OWNER=oracle
ORACLE_SID=orcl
export $ORACLE_SID

if [ ! -f $ORA_HOME/bin/dbstart ]

then
    echo "Oracle startup: cannot start"
    exit
fi

case "$1" in
    'start')
        # Start the Oracle databases:
        # The following command assumes that the oracle login
        # will not prompt the user for any values
        su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start"
        su - $ORA_OWNER -c $ORA_HOME/bin/dbstart
        su - $ORA_OWNER -c "$ORA_HOME/bin/emctl start dbconsole"  
        echo "OK"
        ;;
    'stop')
        # Stop the Oracle databases:
        # The following command assumes that the oracle login
        # will not prompt the user for any values
        su - $ORA_OWNER -c $ORA_HOME/bin/dbshut
        su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop"
        ;;
esac

Ardından chmod komutu ile bu dosyanın yetki seviyesini 750 olarak ayarlıyoruz:

chmod 750 /etc/init.d/oracledb

chkconfig komutu ile bu script dosyasını linux servis’ine ekliyoruz :

/sbin/chkconfig --level 345 oracledb on

One thought on “Linux üzerinde Oracle’ın otomatik olarak başlatılması”

Leave a Reply

Your email address will not be published. Required fields are marked *