Last active
March 20, 2019 17:45
-
-
Save kthalmann/fe07aa5c10c62cb3eff33b2a8db8c88f to your computer and use it in GitHub Desktop.
Script for dumping database. Can easily exclude multiple tables
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# execute with bash (e.g. $ bash mysqldump_script.sh) | |
PASSWORD=XXXXXX | |
HOST=XXXXXX | |
USER=XXXXXX | |
DATABASE=databasename | |
TODAY="$(date +'%d-%m-%Y')" | |
DB_FILE="dump_$TODAY.sql" | |
EXCLUDED_TABLES=( | |
sys_log | |
sys_history | |
) | |
IGNORED_TABLES_STRING='' | |
for TABLE in "${EXCLUDED_TABLES[@]}" | |
do : | |
IGNORED_TABLES_STRING+=" --ignore-table=${DATABASE}.${TABLE}" | |
done | |
echo "Dump DB & compress" | |
mysqldump --host=${HOST} --user=${USER} --password=${PASSWORD} --single-transaction --quick --lock-tables=false ${DATABASE} ${IGNORED_TABLES_STRING} | gzip -c > ${DB_FILE}.gz | |
#echo "Dump DB without compressing" | |
#mysqldump --host=${HOST} --user=${USER} --password=${PASSWORD} --single-transaction --quick --lock-tables=false ${DATABASE} ${IGNORED_TABLES_STRING} > ${DB_FILE} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment