Backup database secara regular dengan mysqldump

Untuk dapat mem-backup database secara regular dengan perintah 'mysqldump', kita dapat membuat script kecil untuk dijalankan pada waktu-waktu tertentu secara regular. Dibawah adalah salah satu contoh bash script pada sistem operasi berbasis Linux. Script ini dijalankan secara regular dengan bantuan cron.
#!/bin/bash
date=$(date +%d%b%Y_%H%M)
sqldir=/backup_database
host=$(hostname)
user=usermysql
pass=passworddnyausermysql
database="database-1 database-2 database-n"
dbhost=localhost
fileage=7776000 #3 bulan
harini=`date +%s`
files=$sqldir/*.*
diff=`ls $files | awk '{ print $1 }'`
if [ ! -d "$sqldir" ]; then mkdir $sqldir
fi
for db in $database;
do 
mysqldump -u$user -p$pass -h$dbhost $db > $sqldir/$db-$host-$date.sql
gzip $sqldir/$db-$host-$date.sql
done

for fn in $diff;
do
mtime=`ls -l $fn --time-style=+%s | awk '{print $6}'`
age=`expr $harini - $mtime`
if [ $age -gt $fileage ];then rm -f $fn
fi
done
exit 0


Maaf untuk pengguna sistem operasi lain..:) 


1 komentar:

narti mengatakan...

artikel bagus nih, walaupun gak ngerti...hihi...
makasih sharingnya.