ショコラ
ポストグレスでユーザを追加するには?
ポストグレスは「ユーザー=ロール」という頭でいいかな。
もっさん先輩
手順
ポストグレスのユーザーを追加して権限を与える手順。
- ポストグレスにログインします。
psql -U postgres
- ユーザーを作成します。
CREATE ROLE {ユーザー名} LOGIN PASSWORD '{パスワード}';
- ユーザーに全権限を与えます。
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public To {ユーザー名};
以上
なのですが、旧世代の PostgreSQL8.4 ではエラーになってしまいました・・・。どうも PostgreSQL8.4 では「ALL TABLES」が使えないみたいです。
=> GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA SCHEMA public To {ユーザー名};
ERROR: syntax error at or near "ALL"
LINE 1: GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA SCHEMA public ...
^
今回はユーザーにスーパーユーザーの権限を与えて対応しようと思います。
ALTER USER {ユーザー名} SUPERUSER;
最初からスーパーユーザーで作成しておけばよかったかもしれません。
CREATE ROLE {ユーザー名} LOGIN PASSWORD '{パスワード}' SUPERUSER;