Postgres を インストール後に、postgres ユーザでログインし、ロールの作成、ロールをオーナとするデータベースを作成しました。
-
ロールの作成
CREATE ROLE db_usr WITH PASSWORD 'password';
-
データベース作成
CREATE DATABASE test_db OWNER db_usr ENCODING 'UTF8' TEMPLATE template0;
作成後に、db_usr
ログインを行おうとすると、以下のエラーが発生しました。
ログインできない旨のメッセージです。
- エラーメッセージ
sql: FATAL: role "xxxxxx" is not permitted to log in
検索したところ、以下の StackOverFlow の記事が見つかりました。
PostgreSQL: role is not permitted to log in - Stack Overflow
記事の内容の通り、CREATE ROLE
コマンドに、ログインオプションをつけていないのが原因で、以下のコマンドを実行後、ログインができるようになりました。
- ALTER ROLE
ALTER ROLE "db_usr" WITH LOGIN;
以下、postgres のドキュメントに、LOGIN
オプションについての記載があります。
CREATE ROLE
以上です。
コメント