25 lines
672 B
Bash
25 lines
672 B
Bash
#!/bin/bash
|
|
set -eu
|
|
|
|
DB_NAME="logs"
|
|
DB_USER="myuser"
|
|
DB_PASSWORD="mypassword"
|
|
|
|
# Create the database
|
|
sudo -u postgres psql -c \
|
|
"CREATE DATABASE ${DB_NAME} WITH ENCODING 'UTF-8' \
|
|
LC_COLLATE 'en_US.UTF-8' LC_CTYPE 'en_US.UTF-8' TEMPLATE template0;"
|
|
|
|
# Create the user
|
|
sudo -u postgres psql -c \
|
|
"CREATE USER ${DB_USER} WITH PASSWORD '${DB_PASSWORD}';"
|
|
sudo -u postgres psql -c \
|
|
"GRANT ALL PRIVILEGES ON DATABASE ${DB_NAME} TO ${DB_USER};"
|
|
sudo -u postgres psql -c \
|
|
"ALTER USER ${DB_USER} VALID UNTIL 'infinity';"
|
|
|
|
# Create the logs table
|
|
sudo -u postgres psql -d "${DB_NAME}" -c \
|
|
"CREATE TABLE IF NOT EXISTS logs (id SERIAL PRIMARY KEY, log_data JSONB);"
|
|
|