Saturday 24 July 2010

Backup Otomatis MySQL dengan Shell Scripts AutoMySQLBackup dan Cron

Script untuk melakukan backup harian, mingguan dan bulanan database mysql dengan menggunakan mysqldump.

Feature Script AutoMySQLBackup

• Backup beberapa Database MySQL dengan satu script saja. (Sekarang bisa backup semua database dalam server dengan mudah. Tidak perlu lagi secara terpisah)
• Backup semua database ke satu backup file atau ke direktori berbeda dan file untuk masing-masing database yang berbeda
• Kompresi otomatis file backup untuk mengurangi space yg terlalu banyak dengan menggunakan tehnik kompresi gzip dan bzip2
• Bisa melakukan backup remote server MySQL ke server pusat
• Bisa dilakukan secara otomatis dengan cron atau juga secara manual
• Bisa melakukan Backup Log ke email address yang Anda tentukan (cocok untuk website hosting dan database hosting)
• Bisa mengirimkan hasil kompresi backup database files ke email address yg Anda tentukan.
• Bisa menentukan maximum size backup yg diinginkan untuk di email.
• Bisa menambahkan perintah lainnya sebelum melakukan backup ataupun perintah(command) lainnya setelah backup.
• Bisa memilih hari dalam seminggu untuk melakukan weekly backup.

AutoMySQLBackup Download
script ini telah dipindah ke Sourceforge untuk maintenance yg lebih baik

http://www.ziddu.com/download/10859698/automysqlbackup2.4.zip.html

Kebutuhan AutoMySQLBackup :

Hanya butuh mysqldump (utility standard yang disediakan oleh mysql client) dan gzip atau bzip2 untuk kompresi file backupnya
jika Anda menginginkan Log nya dikirim ke emailnya maka kamu perlu merubah permission agar dapat melakukan eksekusi pada program ‘mail’.
untuk bisa melakukan kompres file di email ke Anda, harus tersedia Mutt di server Anda (Linux)
Terakhir Anda butuh Bash Shell dan tools standar system dan utilities (semua kebutuhan ini biasanya sudah standard/default hampir disemua system linux)

Apa yang dilakukan AutoMySQLBackup ?

Setiap hari AutoMySQLBackup akan dijalankan (jika disetup di /etc/cron.daily) dan menggunakan mysqldump dan gzip akan melakukan dump spesifik database ke direktori /backups/daily, itu akan terus dibackup setiap hari jadi akan ada 7 backup di direktori tersebut.

Setiap sabtu AutoMySQLBackup akan melakukan backup lagi kedatabase yg Anda pilih tapi akan diletakkan di /backups/weekly, ini akan dilakukan setiap 5 minggu …jadi
akan ada 5 backup disana.

Setiap bulan AutoMySQLBackup akan membaut backup semua database dan meletakkannya ke fodler /backups/monthly. Ini tidak akan pernah dibackup terus menerus jadi terserah
Anda. Saran saya, lakukan backup manual juga setiap bulannya sehingga jika terjadi kerusakan pada database, maka bisa di restore (dikembalikan) ke database Anda kembali
file backup manual tersebut.

Instalasi AutoMySQLBackup:
Instalasinya mudah hanya mengedit beberapa variabel di script AutoMySQLBackup tersebut. Dan dokumentasi nya juga ada di script shell tersebut.
Ini contoh minimumu setup nya, langkah demi langkah …

1. Download automysqlbackup.sh and taruh di direktori /etc/cron.daily atau di home direktori Anda.

2. Lakukan Edit setidaknya beberapa baris berikut :
isi dengan data Anda beberapa settingan berikut
USERNAME=dbuser (The user must have at least select privileges to the databases) PASSWORD=password
DBNAMES=”DB1 DB2 DB3″ (make sure to keep the quotes ” ” otherwise it won’t work)

3. Rubah permissionnya file tsb dengan perintah : chmod u+rwx namafileshellnya
4. Buat direktori berikut ./backups
5. itu aja … sekarang bisa jalanin langsung ./automysqlbackup.sh atau taruh di /etc/cron.daily biar bisa dijalanin setiap hari

nb: Udah aku coba di Ubuntu 8.04 Server dan berhasil baik

copaz from : SINI