Hari ini pekerjaan memindahkan script Sql yang berjalan secara periodik pada Server Oracle 9i dengan OS Linux RedHat Enterprise 4.
Artikel ini membahas bagaimana sintak SQL bisa dijalankan pada server Oracle (Linux RedHat Enterprise 4) secara otomatis dan berkala tiap waktunya. untuk memulai setting silahkan diikuti step-step berikut.
Buatlah suatu file untuk menjalankan perintah sql (/home/gun/data.sql), contoh:
Artikel ini membahas bagaimana sintak SQL bisa dijalankan pada server Oracle (Linux RedHat Enterprise 4) secara otomatis dan berkala tiap waktunya. untuk memulai setting silahkan diikuti step-step berikut.
Buatlah suatu file untuk menjalankan perintah sql (/home/gun/data.sql), contoh:
spool /home/gun/data.log
select * from tabel_data;
exit;
select * from tabel_data;
exit;
Sekarang buat suatu skrip untuk menjalankan perintah sql tersebut (/home/gun/data.sh),
#!/bin/bash
ORACLE_HOME=/u01/app/oracle/product/9.2.0; export ORACLE_HOME;
ORACLE_SID=MY_DB; export ORACLE_SID;
/u01/app/oracle/product/9.2.0/bin/sqlplus gun/rahasia @/home/gun/data.sql
(user:gun,pass:rahasia untuk login oracle server)ORACLE_HOME=/u01/app/oracle/product/9.2.0; export ORACLE_HOME;
ORACLE_SID=MY_DB; export ORACLE_SID;
/u01/app/oracle/product/9.2.0/bin/sqlplus gun/rahasia @/home/gun/data.sql
Untuk setting path ORACLE_HOME dan ORACLE_SID, bisa dilihat pada folder
/home/oracle/.bash_profile dimana Oracle di install.
File data.sh change mode file dengan 755 :
#chmod 755 /home/gun/data.sh
Pada RedHat, file cron terletak di /etc/crontab , edit file tersebut (bisa gunakan vi editor).
tambahkan baris :
10 6 * * * root /home/gun/data.sh
Eksekusi perintah data.sh akan dijalankan setiap hari jam 6.10 (pagi).
data.sh menjalankan perintah pada data.sql dan akan disimpan dalam pada file data.log.
keterangan perintah cron :
minute hour day month dayofweek command
- minute - nilai interger 0 ~ 59 (menunjukkan menit)
- hour - nilai integer 0 ~ 23 (menunjukkan jam)
- day - nilai integer 1 ~ 31 (menunjukkan tanggal)
- month - nilai integer 1 ~ 12 (menunjukkan bulan)
- dayofweek - nilai integer 0 ~ 7 (menunjukkan hari, 0 atau 7 menunjukkan hari minggu)
# /etc/rc.d/init.d/crond restart
atau
# /sbin/service crond restart
Reference :
http://www.centos.org/docs/2/rhl-cg-en-7.2/cron-task.html
0 komentar:
Posting Komentar