Command pada linux shell bermacam-macam seperti create/update/delete sebua file atau folder, melakukan mounting, sampai bisa melakukan backup database.
Sedangkan Crontab adalah aplikasi penjadwalan pada linux yang memungkinkan untuk eksekusi secara otomatis program/aplikasi/script dengan waktu yang telah dijadwalkan.
Jadi dengan dua buah kemampuan linux tersebut adalah kombinasi lengkap untuk membuat backup database secara otomatis dan terjadwal.
Dibawah ini adalah step by step untuk membuat Auto Backup Database MySQL
1. Buat semua file, sebagai contoh auto_backup.sh Pada file tersebut tuliskan linux shell scripting, seperti dibawah ini:
v_tgl=`date +%Y%m%d_%H%M%S`;
v_name=bukutamu_$v_tgl.sql ;
mysqldump -uroot -ppass bukutamu > /home/dendie/Desktop/$v_name;
v_name=bukutamu_$v_tgl.sql ;
mysqldump -uroot -ppass bukutamu > /home/dendie/Desktop/$v_name;
Script diatas adalah shell scripting yang melakukan dump/backup dari database bernama bukutamu ke alamat /home/dendie/Desktop/
Sedangkan bagian Script yang melakukan backup database adalah
mysqldump -uroot -ppass bukutamu > /home/dendie/Desktop/$v_name;
variabel $vname berisikan format penamaan file hasil script shell yang digunakan sebagai nama hasil dump/backup database.
contoh hasil backup adalah bukutamu_20100128_203001.sql
Sedangkan bagian Script yang membuat format penamaan file adalah
v_tgl=`date +%Y%m%d_%H%M%S`;
v_name=bukutamu_$v_tgl.sql ;
v_name=bukutamu_$v_tgl.sql ;
2. Set file auto_backup.sh sebagai execute file
sudo chmod +x auto_backup.sh
3. Pada command line set Crontab/Scheduling untuk eksekusi file auto_backup.sh
sudo crontab -e
Kemudian ketikan seperti dibawah ini
*/5 * * * * /home/dendie/Desktop/my_data/auto_backup.sh > /home/dendie/Desktop/auto_backup.log
Contoh diatas membuat crontab/scheduling untuk eksekusi file auto_backup.sh setiap 5 menit sekali dan membuat log/catatan ke file auto_backup.log apabila terjadi trouble saat eksekusi.
Berikut ini penjelasan setiap bagian setting crontab
Bagian untuk setting schedule setiap lima menit sekali
*/5 * * * *
Bagian Memberi Alamat file shell /home/dendie/Desktop/auto_backup.sh yang akan dieksekusi
/home/dendie/Desktop/my_data/auto_backup.sh
Bagian Membuat file log auto_backup.log yang otomatis dibuat saat crontab dieksekusi untuk mencatat bila terjadi trouble.
/home/dendie/Desktop/my_data/auto_backup.log
Untuk setting waktu penjadwalan crontab yang lain dapat dilihat di klik
Referensi:
Keterangan:
- OS yang digunakan Ubuntuk Karmic Koala
- Linux shell yang digunakan BASH
This comment has been removed by the author.
ReplyDeletesry mas kalau misalnya saya mau back up mysql dari hari senin s/d jumat di jm 6 sore secara otomatis gmn mas ? ? ? tolong pencerahannya mas.
ReplyDeleteterimakasih
This comment has been removed by the author.
DeleteCara nya sepert ini mas
Deletesudo crontab -e
* 18 * * 0,1,2,3,4
/home/dendie/Desktop/my_data/auto_backup.sh