Files
HomeServerCTs/CT-Files/elkarbackupALP/Extras/MySQLBackup/MySQLBackup-Tool.sh
2021-11-18 16:08:24 +00:00

25 lines
833 B
Bash

#!/bin/bash
##Should be as "/opt/Elkar-MysqlBackup.sh" on the MySQL server
## MysqlUser needs following Global privilleges: SELECT, PROCESS, SHOW DATABASES, LOCK TABLES, TRIGGER, SHOW VIEW
USER="<MysqlUserName>"
PASSWORD="<MysqlUserPassword>"
OUTPUT="/tmp/mysqlBCK"
PRE () {
mkdir $OUTPUT
ExcludeDatabases="Database|information_schema|performance_schema|mysql|sys"
databases=$(mysql -u $USER -p$PASSWORD -e "SHOW DATABASES;" | tr -d "| " | egrep -v $ExcludeDatabases)
for db in $databases; do
if [[ "$db" != "information_schema" ]] && [[ "$db" != "performance_schema" ]] && [[ "$db" != "mysql" ]] && [[ "$db" != _* ]] ; then
echo "Dumping database: $db"
mysqldump -u $USER -p$PASSWORD --databases $db > $OUTPUT/$db.sql
fi
done
}
POST () {
rm -rf /tmp/mysqlBCK
}
$1