ALTER ROLEは、ロールの属性を変更するSQL文。
ALTER ROLE
CentOS で PostgreSQL を使ってみよう!(2) | Let's Postgres
ロールの属性を変更する(ALTER ROLE) | PostgreSQLの使い方
createuserは、
ここによると、PostgreSQLクライアントアプリケーションの持つ「SQLのラッパーコマンド」らしい。
それに対して、属性変更では、psqlを使って「生SQL」のALTER ROLEを発行する必要がある模様。
testuser1は何の属性も付いてなかったので、DB作成可ぐらいにはしておく。
[postgres@localhost ~]$ psql psql (11.7) "help" でヘルプを表示します。 postgres=# \du ロール一覧 ロール名 | 属性 | 所属グループ -----------+----------------------------------------------------------------------------+-------------- postgres | スーパーユーザ, ロール作成可, DB作成可, レプリケーション可, RLS のバイパス | {} testuser1 | | {} postgres=# ALTER ROLE testuser1 WITH CREATEDB; ALTER ROLE postgres=# \du ロール一覧 ロール名 | 属性 | 所属グループ -----------+----------------------------------------------------------------------------+-------------- postgres | スーパーユーザ, ロール作成可, DB作成可, レプリケーション可, RLS のバイパス | {} testuser1 | DB作成可 | {} postgres=#
SQLには';'(セミコロン)を付け忘れずに。
ALTER ROLEが返ってこないようだと失敗してる可能性が高い。
DB作成可が付加された。