Fixing MySQL restore user privileges (MariaDB)

Fix #1523
This commit is contained in:
dpeca 2018-04-05 22:07:36 +02:00 committed by GitHub
commit eb7e6d2fba
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -535,11 +535,15 @@ rebuild_mail_domain_conf() {
rebuild_mysql_database() {
mysql_connect $HOST
mysql_query "CREATE DATABASE \`$DB\` CHARACTER SET $CHARSET" >/dev/null
if [ "$(echo $mysql_ver |cut -d '.' -f2)" -ge 7 ]; then
mysql_query "CREATE USER IF NOT EXISTS \`$DBUSER\`" >/dev/null
mysql_query "CREATE USER IF NOT EXISTS \`$DBUSER\`@localhost" >/dev/null
query="UPDATE mysql.user SET authentication_string='$MD5'"
query="$query WHERE User='$DBUSER'"
if [ "$(echo $mysql_ver |cut -d '.' -f2)" -ge 7 ] || [ "$mysql_fork" = "mariadb" ]; then
mysql_query "CREATE USER IF NOT EXISTS \`$DBUSER\`"
mysql_query "CREATE USER IF NOT EXISTS \`$DBUSER\`@localhost"
if [ "$mysql_fork" = "mariadb" ]; then
query="UPDATE mysql.user SET Password='$MD5' WHERE User='$DBUSER'"
else
query="UPDATE mysql.user SET authentication_string='$MD5'"
query="$query WHERE User='$DBUSER'"
fi
else
query="UPDATE mysql.user SET Password='$MD5' WHERE User='$DBUSER'"
fi