我正在尝试设置一个可以随意创建和销毁的玩具数据库。我不想使用postgres
用户,以防我破坏重要的东西。我做了以下事情:
$ psql -h localhost -U postgres
postgres=# \du
List of roles
Role name | Attributes | Member of
-----------+-----------------------------------+-----------
postgres | Superuser, Create role, Create DB | {}
postgres=# create user Stephen createdb;
CREATE ROLE
postgres=# \du
List of roles
Role name | Attributes | Member of
-----------+-----------------------------------+-----------
postgres | Superuser, Create role, Create DB | {}
stephen | Create DB | {}
postgres=# ^D\q
然后当我尝试连接时,我收到以下错误:
$ psql -h localhost
psql: FATAL: role "Stephen" does not exist
$ psql -h localhost -U Stephen
psql: FATAL: role "Stephen" does not exist
这对我没有意义。我可以看到用户,斯蒂芬,但它不会让我使用它。我错过了什么?
我在OS X Lion上使用psql 9.0.10。
答案 0 :(得分:2)
您是否尝试将其区分大小写:
$ psql -h localhost -U stephen
因为您的角色名称以小s
开头?
答案 1 :(得分:1)
登录区分大小写 - “Stephen”与“stephen”不同。