39 lines
1016 B
Bash
Executable File
39 lines
1016 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
mysql_credential_args="--login-path=local"
|
|
|
|
|
|
|
|
_drop=false
|
|
#_drop=true
|
|
|
|
echo ""
|
|
while read _db_name _db_user _db_pass ; do
|
|
echo -e "\tprocessing database \"$_db_name\""
|
|
|
|
if $_drop ; then
|
|
mysql $mysql_credential_args -N -s -e \
|
|
"DROP DATABASE $_db_name"
|
|
mysql $mysql_credential_args mysql -N -s -e \
|
|
"DELETE FROM db WHERE Db = '$_db_name'"
|
|
mysql $mysql_credential_args mysql -N -s -e \
|
|
"DELETE FROM user WHERE User = '$_db_user'"
|
|
else
|
|
|
|
mysql $mysql_credential_args -N -s -e \
|
|
"CREATE DATABASE IF NOT EXISTS $_db_name CHARACTER SET utf8 COLLATE utf8_general_ci"
|
|
mysql $mysql_credential_args -N -s -e \
|
|
"GRANT ALL ON $_db_name.* TO '$_db_user'@'localhost' IDENTIFIED BY '$_db_pass'"
|
|
mysql $mysql_credential_args -N -s -e \
|
|
"USE mysql; UPDATE user SET Super_priv = 'Y' WHERE User = '$_db_user'"
|
|
fi
|
|
|
|
|
|
done < databases.txt
|
|
echo ""
|
|
|
|
mysql $mysql_credential_args -N -s -e "FLUSH PRIVILEGES"
|
|
|
|
|
|
exit 0
|