デフォルトのテーブルスペースを明示的に指定せずにPostgreSQLでデータベースを作成すると、データベースは問題なく作成されます(pgsysユーザーとしてログインしています)。
postgres =>データベースを作成rich1; CREATE DATABASE postgres =>\l + データベースのリスト 名前|オーナー|エンコーディング|照合| Ctype |アクセス権限|サイズ|テーブルスペース|説明 ----------- + ---------- + ---------- + ---------- --- + ------------- + -------------------------------- ----- + ----------- + ------------ + ------------------- ------------------------- postgres | pgsys | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 7455 kB | pg_default |デフォルトの管理接続データベース rdsadmin | rdsadmin | UTF8 | en_US.UTF-8 | en_US.UTF-8 | rdsadmin = CTc/rdsadmin |アクセスなし| pg_default | rich1 | pgsys | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 7233 kB | pg_default | template0 | rdsadmin | UTF8 | en_US.UTF-8 | en_US.UTF-8 | = c/rdsadmin | 7345 kB | pg_default |変更できない空のデータベース :rdsadmin = CTc/rdsadmin template1 | pgsys | UTF8 | en_US.UTF-8 | en_US.UTF-8 | = c/pgsys | 7345 kB | pg_default |新しいデータベースのデフォルトテンプレート :pgsys = CTc/pgsys (5行)
ご覧のとおり、データベースはpg_defaultテーブルスペースに配置されていますが、テーブルスペース句でデフォルトのテーブルスペースを指定すると(これもpgsysとしてログインします)、権限エラーが発生します。
postgres => create database rich2 tablespace pg_default; ERROR:permission denied for tablespace pg_default
そのユーザーの権限は次のとおりです。
postgres =>\du pgsys ロールのリスト ロール名|属性| のメンバー------------ + ------------- + ----------------- pgsys |役割を作成| {rds_superuser} :DBを作成
これはPostgreSQLのエラーですが、違いが生じる場合に備えて、これはAWS Auroraインスタンスであることを述べておきます。
少なくともpgAdmin v4のトリックは次のとおりです。テーブルスペースを空白のままにします。データベースを作成するとき、デフォルトで「pg_default」になります。