Skip to content

Instantly share code, notes, and snippets.

@atishgoswami
Last active November 19, 2015 10:40
Show Gist options
  • Save atishgoswami/fe62083a38f2ce0c917e to your computer and use it in GitHub Desktop.
Save atishgoswami/fe62083a38f2ce0c917e to your computer and use it in GitHub Desktop.
Backup all databases in MYSQL server
#!/bin/bash
USER="root"
PASSWORD="root"
OUTPUTDIR="backups"
echo "Deleting all files inside $OUTPUTDIR"
#rm "./$OUTPUTDIR/*" > /dev/null 2>&1
ExcludeDatabases="Database|(information|performance)_schema|mysql"
databases=`mysql -u $USER -p$PASSWORD -Bse "SHOW DATABASES;" | egrep -v $ExcludeDatabases`
for db in $databases; do
echo "Dumping database: $db"
FILENAME=$db-`date +%Y-%m-%d-%H-%M-%S`.sql
echo "Command: mysqldump -cenqv -u $USER -p$PASSWORD -r $FILENAME --routines --triggers --lock-tables=false $db"
mysqldump -cenqv -u $USER -p$PASSWORD -r $FILENAME --routines --triggers --lock-tables=false $db
done
#!/bin/bash
USER="root"
PASSWORD="root"
FILES="./backups/*"
FOLDER="./backups"
for FILES in *.sql;
do DB=${FILES/\.sql/};
echo importing $DB;
mysql -u $USER -p$PASSWORD -e "CREATE DATABASE IF NOT EXISTS $DB;";
mysql -v -u $USER -p$PASSWORD $DB < $FILES;
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment