Linux üzerinde Oracle Database Otomatik Başlatma Nasıl Yapılır ?

Oracle Database kurduktan sonra, linux makinayı yeniden başlatınca yani reboot edince malesef database otomatik olarak başlamıyor. Bu sebeple manuel olarak önce listener’ı başlatıyoruz, ardından database’i başlatıyoruz. Oracle Database’i otomatik başlatmak için aşağıda bahsedeceğim adımları uygulayacağız.
Benim makinamda işletim sistemi: Oracle Linux 6 Update 5 (benzer sürümlerde de uygulanabilir). Benim makinamda kurulu Database (Veritabanı): Oracle Database 12c ( 11g R2’de de uygulanabilir).

Makina üzerinde root olarak oturum açın.

/etc/init.d dizinine gidin. Boş bir yer üzerinde sağ tıklayıp “Create Document” -> “Empty File” seçin.

etc/init.d create document

etc/init.d create document

/etc/init.d altında oluşan dosyaya dbora ismini verin. dbora dosyasını düzenleyeceğiz. Bu sebeple üstünde sağ tıklayıp “Open with gedit” i seçiniz.

dbora open with gedit

dbora open with gedit

Alttaki kodun hiç bir yerini değiştirmeden aynen kopyalayın. ( oracle kullanıcı ile kurulum yaptığınızı farz ediyorum. Farklı kullanıcı ile kurulum yaptıysanız ORA_OWNER değerini değiştirin.)

#!/bin/sh
# chkconfig: 345 99 10
# description: Oracle auto start-stop script.
#
# Set ORA_OWNER to the user id of the owner of the 
# Oracle database software.

ORA_OWNER=oracle

case "$1" in
    'start')
        # Start the Oracle databases:
        # The following command assumes that the oracle login 
        # will not prompt the user for any values
        # Remove "&" if you don't want startup as a background process.
        su $ORA_OWNER -c "/home/oracle/scripts/startup.sh >> /home/oracle/scripts/startup_shutdown.log 2>&1" &

        touch /var/lock/subsys/dbora
        ;;
    '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 "/home/oracle/scripts/shutdown.sh >> /home/oracle/scripts/startup_shutdown.log 2>&1"
        rm -f /var/lock/subsys/dbora
        ;;
esac

 

dbora içerik

dbora içerik

dbora’daki değişiklikleri kaydedip çıkın. Terminal’i çalıştırın. Ardından altta yer alan komutları tek tek giriniz.

chmod 750 /etc/init.d/dbora
chkconfig --add dbora
mkdir -p /home/oracle/scripts
chown oracle.oinstall /home/oracle/scripts

chmod: yetkileri ayarlar. chkconfig: dbora nın run level ı ayarlar.
mkdir: birazdan kullanacağımız scripts klasörünü oluşturur.
chown: birazdan kullanacağımız scripts klasörünün sahibini(owner’ını) değiştir.

Terminal mkdir scripts

Terminal mkdir scripts

/home/oracle/scripts klasörüne gidin. startup.sh ve shutdown.sh dosyalarını oluşturun. startup.sh , üstünde sağ tıklayıp “Open with gedit” i seçiniz.Alttaki kodu startup.sh içine kopyalayın. Yalnızca kırımızı renkli olan kısımları, kendi ayarlarınıza göre değiştirip kaydedin. (komut satırına echo $ORACLE_HOSTNAME yazıp görebilirsiniz olması gereken değerleri. )

#!/bin/bash

export TMP=/tmp
export TMPDIR=$TMP
export PATH=/usr/sbin:/usr/local/bin:$PATH
export ORACLE_HOSTNAME=localhost
export ORACLE_UNQNAME=ORACLEDB

export ORACLE_SID=ORACLEDB12C
ORAENV_ASK=NO
. oraenv
ORAENV_ASK=YES

# Start Listener
lsnrctl start

# Start Database
sqlplus / as sysdba << EOF
STARTUP;
EXIT;
EOF
startup.sh (/home/oracle/scripts) - gedit

startup.sh (/home/oracle/scripts) – gedit

shutdown.sh , üstünde sağ tıklayıp “Open with gedit” i seçiniz.Alttaki kodu shutdown.sh içine kopyalayın. Yalnızca kırımızı renkli olan kısımları, kendi ayarlarınıza göre değiştirin (startup dosyasında olduğu gibi).

#!/bin/bash

export TMP=/tmp
export TMPDIR=$TMP
export PATH=/usr/sbin:/usr/local/bin:$PATH
export ORACLE_HOSTNAME=localhost
export ORACLE_UNQNAME=ORACLEDB

export ORACLE_SID=ORACLEDB12C
ORAENV_ASK=NO
. oraenv
ORAENV_ASK=YES

# Stop Database
sqlplus / as sysdba << EOF
SHUTDOWN IMMEDIATE;
EXIT;
EOF

# Stop Listener
lsnrctl stop
shutdown.sh (/home/oracle/scripts) - gedit

shutdown.sh (/home/oracle/scripts) – gedit

Terminali açıp alttaki komutları girin.

chmod u+x /home/oracle/scripts/startup.sh /home/oracle/scripts/shutdown.sh
chown oracle.oinstall /home/oracle/scripts/startup.sh /home/oracle/scripts/shutdown.sh

chmod: yetkileri ayarlar
chown: owner(sahip) bilgisi günceller.

Terminal - chmod, chown

Terminal – chmod, chown

service dbora start
service dbora stop
komutları ile yaptığınız işlemin doğruluğunu kontrol edebilirsiniz. Veya makinayı yeniden başlatıp kontrol edebilirsiniz.