Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # database credentials
- DATABASEHOST=<host>
- DATABASEUSER=<user>
- DATABASEPASSWORD=<password>
- DATABASESCHEMA=<schema>
- DATABASEENV=<env>
- # Local directory of mysqldump file
- LOCALDIR=<localdir>
- # Temporary directory for compressed file
- TEMPDIR=<tempdir>
- # Remote Directory for backups.
- REMOTEDIR=<remote-dir>
- # USERname to login as
- BACKUPUSER=<backupuser>
- # Backup host to login to
- BACKUPHOST=<backuphost>
- # mysqldump file
- MYSQLDUMPFILE="$(date +%Y%m%d)"_bkp_"$DATABASESCHEMA".sql
- # compressed file
- COMPRESSEDFILE="$(date +%Y%m%d)"_"$DATABASEENV"_"$DATABASESCHEMA".tar.gz
- #--- end config
- echo $(date +%H:%M)
- echo "Creating the MySQL dump"
- mysqldump --host="$DATABASEHOST" --user="$DATABASEUSER" --password="$DATABASEPASSWORD" --single-transaction "$DATABASESCHEMA" > "$LOCALDIR"/"$MYSQLDUMPFILE"
- #echo "Generating md5sum"
- md5sum "$LOCALDIR"/* > "$LOCALDIR"/checklist.chk
- #echo "Compressing the dump and checklist"
- tar -cvzf "$TEMPDIR"/$(date +%Y%m%d)"_"$DATABASEENV"_"$DATABASESCHEMA".tar.gz" "$LOCALDIR"/*
- #echo "Sending the compressed file to storage location"
- scp "$TEMPDIR"/"$COMPRESSEDFILE" "$BACKUPHOST":"$REMOTEDIR"
- echo "Removing generated files"
- rm "$LOCALDIR"/checklist.chk > /dev/null 2>&1
- rm "$LOCALDIR"/"$MYSQLDUMPFILE" > /dev/null 2>&1
- rm "$TEMPDIR"/"$COMPRESSEDFILE" > /dev/null 2>&1
- echo $(date +%H:%M)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement