关于Windows 7:PostgreSQL错误致命:角色“用户名”不存在

PostgreSQL error Fatal: role “username” does not exist

我正在Windows中设置我的PostgreSQL 9.1。

我对PostgreSQL无能为力:无法创建b,无法创建用户; 所有操作都返回错误消息

致命:角色根不存在
root是我在安装Postgresql时创建的帐户名

但我可以使用以下连接:

1
 username : postgres

如何使用角色root连接到postgres?
这里有一个使用su命令的linux平台提到的解决方案但是无法找到windows7的解决方案

提前致谢


如果您想使用用户名root登录Postgres,您需要先创建这样的用户。

您首先需要以Postgres超级用户身份登录。 这通常是postgres(并在安装期间指定):

1
psql -U postgres ....

然后你可以创建角色和数据库:

1
2
3
4
5
6
7
8
9
10
11
12
13
psql (9.4.0)
TYPE"help" FOR help.

postgres=# CREATE USER root WITH password 'verysecret';
CREATE ROLE
postgres=# \q

c:\
c:\>psql -U root postgres
psql (9.4.0)
TYPE"help" FOR help.

postgres=>

以超级用户身份登录,您还可以向root用户授予必要的权限。

psql的所有参数都记录在手册中。

手册中还记录了创建用户和数据库:

  • 连接到数据库
  • 创建用户
  • 创建数据库


在某些情况下,当您安装postgres时,不会创建初始DB。

您需要执行initdb。