使用用户名ziggy在AWS上创建了一个postgresql实例。我将数据库恢复到该实例。但是我甚至无法选择任何表格
select * FROM mac_childcare_parcels
给了我ERROR: permission denied for relation mac_childcare_parcels
********** Error **********
该表的所有者属于postgres登录。
所以我试着运行这个:grant all privileges on all tables in schema public to ziggy
,但由于我不是超级用户,我不能给自己的权限,所以抛出权限错误。我需要做什么才能访问表格?
这也行不通
grant select on mac_childcare_parcels to ziggy
此查询返回成功但不允许登录ziggy访问表
GRANT USAGE ON SCHEMA public TO ziggy;
首先使用超级用户登录,并使用如下命令为所有rds超级用户提供对新创建的用户的访问权限
GRANT rds_superuser TO ziggy;
用rds超级用户替换rds_superuser。
您还需要在SCHEMA上使用GRANT,例如
GRANT USAGE ON SCHEMA public TO ziggy;
运行访问级别查询需要超级用户访问权限。但正如你所说的访问不存在那么我会说复制你从备份恢复的数据库的副本,并授予自己作为超级用户。然后为任何用户提供所有需要的访问权限