Rabu, 02 Juli 2014

Studi kasus: Membuat aplikasi sederhana backup (dumping) database MySQL otomatis di Ubuntu Server


Dari artikel sebelumnya yang berjudul “Mengexport database MySQL melalui terminal” saya sudah membahas bagaimana melakukan backup (dumping) database MySQL melalui terminal dan pada artikel sebelumnya yang berjudul “Menjadwalkan eksekusi aplikasi secara otomatis dengan cron” saya juga sudah membahas bagaimana membuat penjadwalan aplikasi secara otomatis. Inti dari artikel ini adalah menggabungkan keduanya, yaitu menjalankan perintah mysqldump dengan cara cronjob.
Untuk skenario ini, saya ingin melakukan backup database test setiap sehari sekali pada jam 06.00 dan data hasil backup tersebut tidak menimpa backup database hari kemaren. Misalnya pada tanggal 02 Januari 2014 saya melakukan backup database dengan nama test.sql di dalam folder 2014-01-02/, maka pada hari berikutnya akan tercipta folder 2014-01-03/ yang berisi backup database test pada hari itu juga dan hari berikutnya akan tercipta folder 2014-01-04/ yang berisi backup database test seperti itu terus berulang pada hari berikutnya.
Untuk itu saya membuat sebuah script sederhana untuk dieksekusi di crontab dengan nama backup_database dengan menjalankan perintah di bawah:
vim backup_database
kemudian saya akan isi script tersebut dengan kode program seperti di bawah ini:

#!/bin/sh
tgl=`date +%F`
/bin/mkdir /home/user/$tgl
/usr/bin/mysqldump -uroot -proot - -opt test > /home/user/$tgl/backup_database.sql
atau
#!/bin/bash
tgl=`date +%F`
/bin/mkdir /home/user/$tgl
/usr/bin/mysqldump -uroot -proot - -opt test > /home/user/$tgl/backup_database.sql
simpan lalu, silakan keluar dari editor vim. Kemudian anda bisa jalankan perintah di bawah, agar file backup_database dapat dieksekusi:
chmod +x backup_database
Setelah itu, saya akan membuat program tersebut dijadwalkan di aplikasi cron sesuai jamnya dengan perintah di bawah:
crontab -e
kemudian saya masukkan konfigurasi di bawah:
* 06 * * * /home/user/./backup_database
simpan, dan silakan buktikan, bahwa sekarang secara otomatis, server anda akan membuat direktori baru sesuai dengan tanggal backup setiap hari pada pukul 06.00 pagi. Lalu pada direktori tersebut akan diisi dengan database hasil dumping / backup sesuai tanggal dari nama direktori anda.
Bagaimana, mudah bukan? Selamat mencoba dan terima kasih telah berkunjung :-)

Tutorial: Langkah-langkah konfigurasi perangkat keras RAID


Di tulisan saya yang sebelumnya yang berjudul “Pengetahuan singkat tentang teknologi RAID”, saya sudah menjelaskan apa itu RAID dan macamnya. Maka pada tulisan kali ini, saya akan melakukan konfigurasi perangkat keras RAID di server HP Proliant DL 380 G8. Jika anda cermati di tulisan saya sebelumnya yang berjudul “Langkah langkah instalasi Ubuntu Server”, storage yang saya gunakan untuk partisi file system dan partisi data adalah hasil dari konfigurasi di tulisan ini. Konfigurasi ini sebenarnya saya lakukan sebelum saya melakukan instalasi Ubuntu server tersebut. Perangkat keras RAID ini menghubungkan antara Harddisk dengan Mainboard. Perangkat keras RAID yang saya gunakan adalah seri HP Smart Array P420i dengan 3 buah hardisk dengan tipe SAS sebesar 300GB dan dua buah 1TB. Ada dua cara untuk mengakses dan melakukan konfigurasi, yang pertama bisa menggunakan fasilitas BIOS seperti yang saya tulis disini atau bisa menggunakan CD Bootable HP Array Configuration Utility (ACU) yang file image nya dapat anda download di website HP, Keduanya sama saja tampilan dan fitur2nya, hanya saja apabila pada BIOS server anda tidak memiliki fitur konfigurasi smart array, maka anda bisa mengaksesnya dari CD Bootable tersebut. Berikut langkah-langkahnya:

1. Saat server anda (HP Proliant DL 380 G8) booting pertama kali, anda akan melihat tampilan seperti di bawah ini:



kemudian anda cermati pada bagian di bawah ini:

silakan pencet F5 untuk masuk ke dalam konfigurasi.

2. Setelah itu anda akan dibawa pada tampilan seperti di bawah ini, dimana terdapat 2 windows, yang kiri berupa tampilan harddisk yang terdeketksi dan windows sebelah kanan untuk melakukan konfigurasi RAID:


3. Silakan perhatikan windows sebelah kiri dari tampilan di atas, maka anda akan lihat bahwa terdapat tiga buah harddisk (unassigned drive) yang terdeteksi yaitu sebesar 300GB dan dua buah 1TB seperti yang ditunjukkan di bawah ini:


04. Dari gambar di atas tersebut terlihat bahwa ketiga harddisk tersebut belum dilakukan konfigurasi RAID, untuk melakukannya, mari kita bikin array terlebih dahulu, dengan menekan tombol create array di windows sebelah kanan, seperti yang tertampil di bawah ini:


5. Kemudian setelah membuat array anda akan di bawa ke tampilan seperti di bawah ini:


6. Pada windows sebelah kanan, anda akan melihat bahwa terdapat 3 buah harddisk yang belum dikonfigurasi RAID seperti yang tertampil pada gambar di bawah:


7. Lalu saya memilih Bay 1 yang berisi harddisk 300GB yang nanti saya isi filesystem Ubuntu server, kemudian klik OK.

8. Setelah OK anda akan dibawa ke tampilan seperti pada gambar di bawah:


Kemudian anda perhatikan pada windows sebelah kiri, terlihat satu buah array baru sebesar kurang lebih 300GB seperti gambar di bawah:


9. Lalu pada windows sebelah kanan, silakan klik create logical drive seperti pada tampilan di bawah:

10. maka anda akan di bawa pada tampilan seperti di bawah:


11. Pada windows sebelah kanan, saya membuat harddisk tersebut di konfigurasi menggunakan RAID 0 dengan kapasitas maksimum kurang lebih 300GB kemudian klik save, seperti tampilan di bawah:


12. Jika berhasil, maka anda akan lihat tampilan seperti di bawah:


13. Pada windows sebelah kiri, unused space 300GB tadi telah berubah menjadi logical drive 300GB dengan RAID 0


14. Lalu mari kita klik unassigned drive (pada windows sebelah kiri) sisanya pada bagian atas dari logical drive yang telah kita buat, sehingga tertampil tampilan seperti di bawah ini:


15. silakan ulangi langkah yang mirip dengan langkah 4 tadi di atas, yaitu klik create array, sehingga tertampil tampilan seperti di bawah ini:


16. Silakan pilih 2 drive sisanya dengan mencentang opsi select all seperti gambar di bawah:


17. Kemudian klik OK, dan anda akan di bawa ke tampilan seperti di bawah:

18. pada windows sebelah kiri anda akan melihat unused space sebesar 1,8TB yang merupakan gabungan kedua hardisk 1TB yang dijadikan satu array dari perintah sebelumnya tadi


19. Dari windows sebelah kanan pada gambar di atas (langkah ke 17), silakan klik create logical drive seperti pada gambar di bawah:


20. lalu anda akan di beri tampilan seperti di bawah ini:


21. pada windows sebelah kanan, anda akan diminta melakukan konfigurasi RAID seperti pada tampilan di bawah ini:


Pilih RAID 1 dengan size maximum, kemudian save. Dengan begitu anda menggabungkan kedua buah hardisk dengan total 2TB menjadi satu buah drive logical RAID 1 dengan kapasitas maksimum 1 TB (dimana 1TB sisanya digunakan sebagai mirror).

22. Setelah save anda akan di bawa ke tampilan seperti di bawah:

pada windows sebelah kiri, anda dapat melihat bahwa telah terbuat 2 buah drive logical yang terdiri dari 1 buah drive dengan konfigurasi RAID 0 dengan kapasitas maksimum kurnag lebih 300GB, dan satu buah logical drive dengan konfigurasi RAID 1 yang memiliki kapasitas maksimum 1TB untuk menyimpan data, seperti yang ditunjukkan pada gambar di bawah:


23. Untuk melakukan penghapusan logical drive dan konfigurasi ulang RAID, anda bisa memilih salah satu dari kedua logical drive tersebut dan klik tombol delete pada windows sebelah kanan, seperti yang ditunjukkan pada gambar di bawah:


24. Setelah selesai, anda bisa klik tombol exit ACU yang berada pada pojok kiri bawah seperti yang ditunjukkan pada agambar di bawah:

25. Kemudian anda akan di bawa ke tampilan berikutnya seperti pada gambar di bawah:

Lalu silakan klik tombol power pada pojok kanan atas, lalu klik tombol reboot seperti pada tampilan di bawah:


26. Silakan masukkan CD Instalasi Ubuntu Server anda, lalu jangan lupa silakan boot dari DVD anda untuk melakukan langkah instalasi seperti yang ditunjukkan pada gambar di bawah: