我正在设置PostgreSQL 9.1。我不能用PostgreSQL做任何事情:不能createdb,不能createuser;所有操作都返回错误消息

Fatal: role h9uest does not exist

h9uest是我的帐户名,我在这个帐户下执行apt-get安装PostgreSQL 9.1。 根帐户仍然存在类似的错误。


当前回答

按照以下步骤让postgres工作。

在终端中,使用以下命令找到应用程序支持文件夹。 /Users/[用户名]/库/应用程序支持 删除应用程序Postgres。 重新安装应用程序,它应该工作得很好。

其他回答

这对我来说很管用:

psql -h localhost -U postgres

我把它安装在macOS上,必须:

cd /Applications/Postgres.app/Contents/Versions/9.5/bin
createuser -U postgres -s YOURUSERNAME
createdb YOURUSERNAME

来源如下:https://github.com/PostgresApp/PostgresApp/issues/313#issuecomment-192461641

对于Postgres 9.5版本,使用以下命令:

psql -h localhost -U postgres

希望这能有所帮助。

在我的案例中,手动创建一个DB集群解决了这个问题。

由于某种原因,当我安装postgres时,没有创建“初始DB”。执行initdb对我来说很管用。

这个解决方案在PostgreSQL Wiki -第一步:

initdb 通常情况下,在操作系统中安装postgres会创建一个“初始DB”,并启动postgres服务器守护进程。如果没有,则需要运行initdb

使用——no-owner——no-privileges标记转储和恢复

e.g.

Dump - pg_dump——no-owner——no-privileges——format=c——dbname=postgres://userpass:username@postgres:5432/schemaname > /tmp/full.dump

恢复- pg_restore——no-owner——no-privileges——format=c——dbname=postgres://userpass:username@postgres:5432/schemaname /tmp/full.dump