我在RDS实例上有大约5个测试postgres数据库。直到所有日期都已使用Master_user
创建并运行(在创建实例时创建)。
我现在正在尝试分别为每个数据库创建5个新用户并授予所有权限。我尝试了Pgadmin4 Grant向导,但是我获得了任何授权选项的权限被拒绝错误。 Grant ALL
无效,Grant Create, Insert
等也无效。可能是什么问题?
答案 0 :(得分:2)
我刚刚用--no-owner --no-acl
备份所有数据库,重命名数据库并使用新所有者创建新数据库。恢复每个所有者的每个备份,并实现我想要的。
答案 1 :(得分:0)
解决方案是使用以实例为模板创建的主数据库,以便主用户可以完全访问它。我认为他们只是试图限制人们在同一个RDS上创建几个DB。
答案 2 :(得分:0)
假设我们以rds_superuser身份连接到db,因此我们需要执行以下步骤:
例如:
rds_superuser@rds_db> grant schema_owner to rds_superuser ;
GRANT ROLE
rds_superuser@rds_db> set role schema_owner;
SET
rds_superuser@rds_db> grant select on all tables in schema schema_name to new_user;
GRANT
rds_superuser@rds_db> reset role;
RESET