我遇到了Google的Cloud SQL解决方案的问题,该问题无法在数据库上创建新的架构。规则如下:
testdb=> \du
List of roles
Role name | Attributes | Member of
-------------------+------------------------------------------------------------+---------------------
cloudsqladmin | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
cloudsqlagent | Create role, Create DB | {cloudsqlsuperuser}
cloudsqlreplica | Replication | {}
cloudsqlsuperuser | Create role, Create DB | {}
testuser | Create role, Create DB | {cloudsqlsuperuser}
postgres | Create role, Create DB | {cloudsqlsuperuser}
尝试使用testuser
创建新架构会导致权限错误。
testdb=> CREATE SCHEMA IF NOT EXISTS testschema;
ERROR: permission denied for database testdb
但是由于相同的权限问题,我无法GRANT CREATE ON DATABASE testdb TO testuser;
。
有没有办法赋予testuser
自己创建架构的特权?