Add/Redesign scripts for creating/dropping databases

This commit is contained in:
2017-09-23 01:09:29 +02:00
parent 1a89bbbd84
commit e04e224888
7 changed files with 964 additions and 0 deletions

View File

@ -0,0 +1,14 @@
#!/usr/bin/env bash
src_dir=/root
dst_dir="/root/bin/mysql/databases"
while IFS='' read -r -d '' _file || [[ -n $_file ]] ; do
mv "$_file" "${dst_dir}/${_file##*.}"
done < <(find "$src_dir" -maxdepth 1 -type f -name "databases.txt.*" -print0)
#while read -r _file ; do
# mv "$_file" "${dst_dir}/${_file##*.}"
#done < <(find "$src_dir" -maxdepth 1 -type f -name "databases.txt.*")
exit 0

34
utils/recreate_databases.sh Executable file
View File

@ -0,0 +1,34 @@
#!/usr/bin/env bash
mysql_credential_args="--login-path=local"
echo ""
while read _db_name _db_user _db_pass ; do
echo -e "\tprocessing database \"$_db_name\""
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'"
echo -e "\t database \"$_db_name\" deleted."
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'"
echo -e "\t database \"$_db_name\" recreated"
done < databases.txt
echo ""
mysql $mysql_credential_args -N -s -e "FLUSH PRIVILEGES"
exit 0