mirror-nourybot/migrations
2023-10-04 00:05:38 +02:00
..
000001_create_channels_table.down.sql add migrations 2023-09-08 03:55:00 +02:00
000001_create_channels_table.up.sql add migrations 2023-09-08 03:55:00 +02:00
000002_create_users_table.down.sql add migrations 2023-09-08 03:55:00 +02:00
000002_create_users_table.up.sql add migrations 2023-09-08 03:55:00 +02:00
000003_create_commands_table.down.sql add migrations 2023-09-08 03:55:00 +02:00
000003_create_commands_table.up.sql add migrations 2023-09-08 03:55:00 +02:00
000004_create_timers_table.down.sql add migrations 2023-09-08 03:55:00 +02:00
000004_create_timers_table.up.sql add uuid identifiers for timers 2023-10-04 00:05:38 +02:00
README.md add migrations 2023-09-08 03:55:00 +02:00

Migrations

Tool: golang-migrate

Create Database

$ sudo -u postgres psql
psql (14.3)
Type "help" for help.

postgres=# CREATE DATABASE nourybot;
CREATE DATABASE
postgres=# \c nourybot;
You are now connected to database "nourybot" as user "postgres".
nourybot=# CREATE ROLE username WITH LOGIN PASSWORD 'password';
CREATE ROLE
nourybot=# CREATE EXTENSION IF NOT EXISTS citext;
CREATE EXTENSION
nourybot=# 

Connect to Database

$ psql --host=localhost --dbname=nourybot --username=username
psql (14.3)
Type "help" for help.

nourybot=> 

Apply migrations

$ migrate -path=./migrations -database="postgres://username:password@localhost/nourybot?sslmode=disable" up
$ migrate -path=./migrations -database="postgres://username:password@localhost/nourybot?sslmode=disable" down

Fix Dirty database

$ migrate -path=./migrations -database="postgres://username:password@localhost/nourybot?sslmode=disable" force 1