PostgreSQL公共访问数据库

时间:2015-02-24 10:14:44

标签: postgresql connect public

我最近创建了一个测试数据库,但我希望所有用户都可以访问它。

我使用postgres创建了数据库,然后使用命令

GRANT ALL ON DATABASE dbname TO public;

但是当我退出并尝试与其他用户连接时,我收到此错误

psql -d dbname
psql: FATAL:  role "username" does not exist

我不想为每个要访问数据库的人创建一个用户,这就是我想让它公开的原因。是否有我仍然遗失的许可?

1 个答案:

答案 0 :(得分:4)

虽然授予了对所有人(public)的访问权限,但您连接的用户必须存在。 psql的默认值是您系统帐户的用户名。当然,您可以创建一个无密码的anonymous用户,每个人都可以用来连接:

psql -U anonymous dbname