Di banyak lingkungan, diinginkan agar database dan pendengar Oracle secara otomatis mati dan mulai saat server di-boot ulang. Jika Anda memiliki persyaratan itu, ikuti beberapa langkah berikutnya untuk mengotomatiskan shutdown dan startup database dan listener Anda:
Langkah-langkah untuk mengonfigurasi startup/shutdown otomatis
1. Edit file /etc/oratab, dan tempatkan Y di akhir entri untuk database yang ingin Anda restart secara otomatis ketika sistem reboot. Anda mungkin memerlukan hak akses root untuk mengedit file:
# vi /etc/oratab [SID]:[ORACLE_HOME]:Y
Y di akhir string menandakan bahwa database dapat dimulai dan dihentikan oleh skrip ORACLE_HOME/bin/dbstart dan ORACLE_HOME/bin/dbshut.
Catatan :dengan beberapa sistem Unix (seperti Solaris), file oratab biasanya terletak di direktori /var/opt/Oracle.
2. Buat skrip layanan /etc/init.d/dbora . Isi scriptnya adalah sebagai berikut. Pastikan Anda mengubah nilai variabel ORA_HOME dan ORA_OWNER agar sesuai dengan lingkungan Anda. Ini adalah skrip sederhana dari apa yang minimal Anda perlukan untuk menghentikan dan memulai basis data dan pendengar:
# vi /etc/init.d/dbora #!/bin/bash # chkconfig: 35 99 10 # description: Starts and stops Oracle processes ORA_HOME=/oracle/app/oracle/product/11.2.0/db_1 ORA_OWNER=oracle case "$1" in 'start') su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start" su - $ORA_OWNER -c $ORA_HOME/bin/dbstart ;; 'stop') su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop" su - $ORA_OWNER -c $ORA_HOME/bin/dbshut ;; esac # End of script dbora
Memahami skrip
Garis:
# chkconfig: 35 99 10 # description: Starts and stops Oracle database
bersifat wajib dan bukan hanya komentar karena menggambarkan karakteristik layanan di mana:
- 35 berarti layanan akan dimulai pada level init 3 dan 5 dan akan dihentikan di level lain.
- 99 berarti layanan akan dimulai hampir mendekati akhir pemrosesan level init
- 10 berarti bahwa layanan akan dihentikan pada saat hampir dimulainya pemrosesan level init
Sisa skrip cukup mudah dimengerti. Kasus pertama memulai pendengar/DB sedangkan kasus ke-2 menghentikannya. Ikuti langkah-langkah di bawah ini untuk membuat skrip dapat dieksekusi dan memungkinkan untuk berjalan secara otomatis saat sistem melakukan booting.
Jadikan skrip dapat dieksekusi dan Aktifkan untuk dijalankan saat boot
1. Ubah grup file dbora agar sesuai dengan grup yang ditetapkan untuk pemilik sistem operasi perangkat lunak Oracle (biasanya oinstall atau dba):
# chgrp dba /etc/init.d/dbora
2. Setel izin skrip ke 755.
# chmod 750 /etc/init.d/dbora
3. Jalankan perintah chkconfig berikut:
# chkconfig --add dbora
Tindakan ini mendaftarkan layanan ke mekanisme layanan Linux. Ini juga membuat tautan simbolis yang sesuai ke file di bawah direktori /etc/rc.d. Gunakan opsi –list untuk menampilkan apakah layanan aktif atau nonaktif untuk setiap runlevel:
# chkconfig --list | grep dbora dbora 0:off 1:off 2:off 3:on 4:off 5:on 6:off
Output ini menunjukkan layanan dbora aktif untuk runlevel 3 dan 5. Jika Anda perlu menghapus layanan, gunakan –del pilihan chkconfig.
Menguji skrip
1. Untuk menguji apakah skrip dbora berfungsi, sebagai root jalankan perintah berikut untuk menghentikan basis data dan pendengar Anda:
# /etc/init.d/dbora stop
2. Untuk menguji startup database dan listener Anda, sebagai root jalankan perintah berikut:
# /etc/init.d/dbora start
Pemikiran Akhir
Mengotomatiskan shutdown dan startup database Oracle Anda akan bervariasi tergantung pada apakah Anda menggunakan alat seperti perangkat lunak cluster atau ASM. Solusi di bagian ini menunjukkan langkah-langkah umum untuk menerapkan shutdown dan startup database Anda dalam skenario di mana Anda tidak memiliki software lain yang mengelola tugas ini.