Когда я создаю базу данных в PostgreSQL без явного указания табличного пространства по умолчанию, база данных создается без проблем (я вошел в систему как пользователь pgsys ):
postgres => создать базу данных rich1; СОЗДАТЬ БАЗУ ДАННЫХ postgres => \ l + Список баз данных Имя | Владелец | Кодировка | Сопоставление | Ctype | Права доступа | Размер | Табличное пространство | Описание ----------- + ---------- + ---------- + ------------- + - ----------- + ------------------------------------- + ----------- + ------------ + ------------------------- ------------------- Postgres | pgsys | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 7455 кБ | pg_default | база данных административных подключений по умолчанию рдсадмин | рдсадмин | 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 кБ | pg_default | template0 | рдсадмин | UTF8 | en_US.UTF-8 | en_US.UTF-8 | = c / rdsadmin | 7345 кБ | pg_default | неизменяемая пустая база данных : rdsadmin = CTc / rdsadmin template1 | pgsys | UTF8 | en_US.UTF-8 | en_US.UTF-8 | = c / pgsys | 7345 кБ | pg_default | шаблон по умолчанию для новых баз данных : pgsys = CTc / pgsys (5 рядов)
Как вы можете видеть, база данных помещается в табличное пространство pg_default, но если я укажу табличное пространство по умолчанию в предложении tablespace (также все еще зарегистрировано как pgsys ), я получу ошибку разрешения:
postgres => создать базу данных rich2 табличное пространство pg_default; ОШИБКА: отказано в доступе к табличному пространству pg_default
Вот разрешения для этого пользователя:
postgres => \ du pgsys Список ролей Название роли | Атрибуты | Член ----------- + ------------- + ----------------- pgsys | Создать роль | {} Rds_superuser : Создать базу данных
Это ошибка PostgreSQL, но я должен отметить, что это экземпляр AWS Aurora в случае, если это имеет значение.