Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
- # konfigurasi akses database & direktori temporary, silakan di edit
- MYHOST="localhost"
- USER="root"
- PASSWORD=""
- OUTPUT="/tmp"
- # Letak script dropbox-uploader
- DROPBOX_UPLOADER="/root/dropbox_uploader.sh"
- CONFIG="/root/.dropbox_uploader"
- # hapus backup terdahulu kalo ada
- rm -f $OUTPUT/*sql* > /dev/null 2>&1
- # mulai proses backup
- echo " > [$(date +"%d/%m/%Y/%s/%i/%H - %T")] Memulai proses backup database..."
- # list semua database
- databases=`mysql --user=$USER --password=$PASSWORD -e "SHOW DATABASES;" | tr -d "| " | grep -v Database`
- # backup semua database, kecuali database default mysql
- for db in $databases; do
- if [[ "$db" != "information_schema" ]] && [[ "$db" != "performance_schema" ]] && [[ "$db" != "test" ]] &&[[ "$db" != "mysql" ]] &&[[ "$db" != _* ]] ; then
- echo " > Dumping database: $db"
- mysqldump --force --opt --user=$USER --password=$PASSWORD --databases $db > $OUTPUT/$MYHOST-`date +%d-%m-%Y_%s:%i:%H`.$db.sql
- gzip $OUTPUT/$MYHOST-`date +%d-%m-%Y_%s:%i:%H`.$db.sql
- fi
- done
- # loop dan backup *.gz di temporary
- for gz in $OUTPUT/*.gz; do
- echo " > Uploading backup file: $gz "
- $DROPBOX_UPLOADER -f "$CONFIG" upload "$gz" /;
- done
- # backup selesai
- rm -f $OUTPUT/*sql* > /dev/null 2>&1
- echo " > [$(date +"%d/%m/%Y_%s/%i/%H - %T")] Backup database ke Dropbox selesai."
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement