|
#!/bin/bash
|
|
|
|
echo "####################################################################"
|
|
echo "# docker_mariadb_create_customer_script #"
|
|
echo "# Dennis Buchhorn - bucde@b-eit.de #"
|
|
echo "####################################################################"
|
|
echo "# WARNING: password is plain text! #"
|
|
#echo "# #"
|
|
echo "####################################################################"
|
|
echo ""
|
|
|
|
MARIADB_CONTAINER_NAME=""
|
|
MARIADB_ROOT_PASSWORD=""
|
|
MARIADB_CUSTOMER_NAME=""
|
|
MARIADB_CUSTOMER_PASSWORD=""
|
|
MARIADB_CUSTOMER_CHARSET=""
|
|
MARIADB_CUSTOMER_COLLATE=""
|
|
|
|
read -p "Enter mariadb container name: " MARIADB_CONTAINER_NAME
|
|
read -p "Enter mariadb root password: " MARIADB_ROOT_PASSWORD
|
|
read -p "Enter customer name: " MARIADB_CUSTOMER_NAME
|
|
read -p "Enter customer password: " MARIADB_CUSTOMER_PASSWORD
|
|
read -p "Enter character set (leave empty for default): " MARIADB_CUSTOMER_CHARSET
|
|
read -p "Enter collate (leave empty for default): " MARIADB_CUSTOMER_COLLATE
|
|
|
|
MARIADB_CUSTOMER_DBNAME="${MARIADB_CUSTOMER_NAME}db"
|
|
|
|
rm -f tmp
|
|
touch tmp
|
|
echo "CREATE USER '"$MARIADB_CUSTOMER_NAME"'@'%' IDENTIFIED BY '"$MARIADB_CUSTOMER_PASSWORD"';" >> tmp
|
|
|
|
if [ -z "$MARIADB_CUSTOMER_CHARSET" ]; then
|
|
if [ -z "$MARIADB_CUSTOMER_COLLATE" ]; then
|
|
echo "CREATE DATABASE "$MARIADB_CUSTOMER_DBNAME";" >> tmp
|
|
else
|
|
echo "CREATE DATABASE "$MARIADB_CUSTOMER_DBNAME" COLLATE '"$MARIADB_CUSTOMER_COLLATE"';" >> tmp
|
|
fi
|
|
else
|
|
if [ -z "$MARIADB_CUSTOMER_COLLATE" ]; then
|
|
echo "CREATE DATABASE "$MARIADB_CUSTOMER_DBNAME" CHARACTER SET '"$MARIADB_CUSTOMER_CHARSET"';" >> tmp
|
|
else
|
|
echo "CREATE DATABASE "$MARIADB_CUSTOMER_DBNAME" CHARACTER SET '"$MARIADB_CUSTOMER_CHARSET"' COLLATE '"$MARIADB_CUSTOMER_COLLATE"';" >> tmp
|
|
fi
|
|
fi
|
|
|
|
echo "GRANT ALL PRIVILEGES ON "$MARIADB_CUSTOMER_DBNAME".* To '"$MARIADB_CUSTOMER_NAME"'@'%' IDENTIFIED BY '"$MARIADB_CUSTOMER_PASSWORD"';" >> tmp
|
|
echo "FLUSH PRIVILEGES;" >> tmp
|
|
|
|
cat tmp | docker exec -i $MARIADB_CONTAINER_NAME mysql -uroot -p$MARIADB_ROOT_PASSWORD
|
|
|
|
rm -f tmp
|
|
|
|
echo "Database '"$MARIADB_CUSTOMER_DBNAME"' with user '"$MARIADB_CUSTOMER_NAME"' created."
|
|
echo "Done!"
|