Skip to content

Instantly share code, notes, and snippets.

@conrjac
Created October 20, 2016 15:34
Show Gist options
  • Save conrjac/a6f011b1678fac06c6d15068bb797af2 to your computer and use it in GitHub Desktop.
Save conrjac/a6f011b1678fac06c6d15068bb797af2 to your computer and use it in GitHub Desktop.
Simple MySQL Backup Shell Script
#!/bin/bash
USER="BACKUP-USER-ACCOUNT"
PASSWORD="BACKUP-USER-PASSOWRD"
TIME_STAMP=$(date +%Y-%m-%d-%T)
ROOT_BACKUP="BACKUP-LOCATION-ROOT"
BACKUP_LOCATION="${ROOT_BACKUP}/${TIME_STAMP}"
mkdir -p ${BACKUP_LOCATION}
rm "$OUTPUTDIR/*gz" > /dev/null 2>&1
databases=`mysql --user=$USER --password=$PASSWORD -e "SHOW DATABASES;" | tr -d "| " | grep -v Database`
for db in $databases; do
if [[ "$db" != "information_schema" ]] && [[ "$db" != _* ]] ; then
echo "Dumping database: $db"
mysqldump --force --opt --user=$USER --password=$PASSWORD --databases $db > $BACKUP_LOCATION/`date +%Y%m%d`.$db.sql
gzip $BACKUP_LOCATION/`date +%Y%m%d`.$db.sql
fi
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment