Senin, 20 Oktober 2008

Backup Database dengan mysqldump & crondtab Fedora8

Membuat backup database mysql dengan mysqldump dan Fungsi Crondtab

Tutorial saya kali ini membahas backup database untuk aplikasi yang dipakai saya adalah mysql versi 5.0 sistem operasi linux fedora8,cara ini sudah berhasil saya lakukan dan sangat membantu sekali dalam proses membackup database yang sangat penting untuk berjaga2 supaya agar sewaktu bilamana terjadi hall2 yang tidak diinginkan seperti database corrupt /rusak kita bisa mengatasinya dengan cara mengembalikan databasenya ke tanggal kemarin,minimal backup database sehari sekali.

1.Tidak Menggunakan Script SH

kode dibawah ini untuk membackup database mysql:
=====================================================================
mysqldump -ubackupteja -pbt -hlocalhost test > /media/backup/test.sql
=====================================================================

penjelasan
----------
mysqldump
merupakan file exe untuk backup database mysqlmerupakan file bawaan dari mysql
yang letaknya kalau di fedora8 di folder /usr/bin/


-uroot => merupakan nama user mysql (harus sebagai administrator backup)
-bt => merupakan password dari nama user diatas
-hlocalhost => merupakan computername yang akan dipakai,saya coba localhost untuk membackup
test => merupakan nama database yang akan di backup

/media/backup/test.mysql => merupakan loakasi tujuan folder backup database dengan nama test.sql


Langkah pertama


1.gunakan perintah chmod777 diterminal untuk menchmod mysqldump yg letaknya di /usr/bin/


Ketik diterminal

#cd ..
#cd usr
#cd bin
#chmod 777 mysqldump

Langkah Kedua
paste kode diatas dan tambahkan /usr/bin/ (karena letak mysqldump di folder tersebut)
jadi seperti dibawah:


/usr/bin/mysqldump -ubackupteja -pbt -hlocalhost test > /media/backup/test.sql


Langkah Kedua

paste kode tersebut di crondtab:
============================================================================
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
05 20 * * * root /sbin/shutdown -h now
58 12 * * * root /usr/bin/mysqldump -uroot -pbt -hlocalhost test > /media/backup/test.sql


==============================================================================

operasi backup akan dijalankan pada hari ini jam 12 menit ke 58
selesai anda sudah bisa menjalankan backup terjadwal,perhatikan jamnya detail untuk jam
dengan format 12 keatas kadang2 tidak bisa dikarenakan formatnya 1-24 sedang kan di komputer
1-12.


Langkah Ketiga
restart Cronttab

ketik diterminal
#service crond restart



2.Menggunakan Script SH
script sh adalah file script yang berisi kode2 tertentu yang letaknya di folder tertentu,yang kode2
tertentu itu dianggap fungsi sama bila diketik diterminal di linux(seperti file bat diwindows).
cara ini favorit saya karena saya menggunkannya sekarang

Langkah pertama

1.gunakan perintah chmod777 diterminal untuk menchmod mysqldump yg letaknya di /usr/bin/


Ketik diterminal

#cd ..
#cd usr
#cd bin
#chmod 777 mysqldump

Langkah Kedua

1.buat file sh open text dokumen

===================================================================================
#!/bin/bash
date=`date +%Y-%m-%d_%Hh%M`
/usr/bin/mysqldump -uroot -pbt -hlocalhost test > /media/backup/inventory$date.sql
===================================================================================
simpan dengan nama bupteja.sh => nama bisa diganti sesuai keinginan
taruh di lokasi folder /usr/bin/ibasbup/ => merupakan lokasi folder alamat penyimpanan
bupteja.sh =>> dapat diganti sesuai keinginan

Langkah Ketiga

untuk jaga2 sebaiknya file bupteja.sh di chmod terlebih dahulu



Ketik diterminal

#cd ..
#cd usr
#cd bin
#cd ibasbup
#chmod 777 bupteja.sh

Langkah Keempat
pasang di crondtab

=======================================================
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
05 20 * * * root /sbin/shutdown -h now
47 14 * * * root /usr/bin/ibasbup/bupteja.sh ===> memanggil script sh yang tadi telah dibuat
==========================================================


backupdilakukan di jam 2 lewat 47 menit =>>> bisa diganti sesuai dengan keinginan.


Langkah Kelima

restart Cronttab
ketik diterminal
#service crond restart

Sekian sedikit tutorial dari mohon maaf bilamana ada kekurangan,seperti biasa kritik
dan saran kirim ke ibaskorn@gmail.com,wasalam.