Add database creation script

This commit is contained in:
2020-01-02 21:36:35 +01:00
parent 8a858e6fc2
commit 92a412135a
5 changed files with 40 additions and 7 deletions

View File

@@ -1,3 +1,5 @@
from os import environ
from sqlalchemy import create_engine
@@ -9,12 +11,15 @@ def create_connection():
db_connection_uri = "mysql+pymysql://{user}:{pw}@{url}/{db}".format(
user=db_user, pw=db_password, url=db_url, db=db_name
)
engine = sqlalchemy.create_engine(db_connection_uri, echo=True)
engine = create_engine(db_connection_uri, echo=True)
def create_tables():
def get_env_variable(name):
try:
return os.environ[name]
return environ[name]
except KeyError:
message = "Expected environment variable '{}' not set.".format(name)
raise Exception(message)

View File

@@ -0,0 +1,20 @@
#!/bin/sh
EXPECTED_ARGS=3
ERROR=1
MYSQL=$(command -v which)
if [ $# -ne $EXPECTED_ARGS ]
then
echo "Usage: $0 <database name> <database user> <database password>"
exit $ERROR
fi
Q1="CREATE DATABASE IF NOT EXISTS $1;"
Q2="GRANT USAGE ON *.* TO $2@localhost IDENTIFIED BY '$3';"
Q3="GRANT ALL PRIVILEGES ON $1.* TO $2@localhost;"
Q4="FLUSH PRIVILEGES;"
SQL="${Q1}${Q2}${Q3}${Q4}"
$MYSQL -uroot -p -e "$SQL"