我试图在 postgresql中查询数据库表,但每次运行以下查询时它都会给我INSUFFICIENT PRIVILEGE错误.可能是这种许可被拒绝错误的原因.另外,我在 windows中使用pgadmin工具来连接 Linux环境中的数据库.以下是我正在运行的查询
- > > SELECT appid,hash
- > FROM app
- > WHERE appid=1;
在运行相同的查询时,我得到以下错误
- ERROR: permission denied for relation app
- ********** Error **********
- ERROR: permission denied for relation app
- SQL state: 42501
解决方法
运行查询的用户需要该表的权限.您可以使用GRANT语句将它们授予该用户.以下是授予PUBLIC的示例
- GRANT SELECT ON tablename TO PUBLIC;
此外,我已经看到SELinux引起的问题和诸如here这样的地方提到它.我不确定关闭SELinux的命令,但你可以通过使用来查看它是否正在运行
- selinuxenabled && echo enabled || echo disabled