psql:数据库“dbname”的权限被拒绝(“用户没有CONNECT权限。”)/“无法识别的角色选项'connect'”

时间:2013-10-10 17:30:38

标签: postgresql login connect role psql

当我尝试使用psql登录我的数据库时,执行以下操作:

psql dbname --username=qgis --password
>>(prompts for password, entered password)
psql: FATAL:  permission denied for database "gisdatabase"
DETAIL:  User does not have CONNECT privilege.

我在谷歌上搜索过有关这个简单问题的信息,但没有找到任何人直接谈论此事。

我试过这样做:

psql dbname
>>ALTER ROLE qgis WITH CONNECT;

但得到了这个错误:

ERROR:  unrecognized role option "connect"

再一次,我在这里,再问一个关于stackoverflow的问题。谢谢你的时间人士

1 个答案:

答案 0 :(得分:9)

您需要授予权限。试试这个:

psql dbname
>> GRANT CONNECT ON DATABASE dbname TO qgis;

我假设您还需要更多权限。 PostgreSQL拥有所有DBMS的最佳文档页面之一:http://www.postgresql.org/docs/9.0/static/sql-grant.html(您可以选择在页面顶部使用的postgres版本。)