PostgreSQL错误:致命:angular色“用户名”不存在

我正在build立我的PostgreSQL 9.1。 我无法用PostgreSQL做任何事情:不能createdb ,不能createuser ; 所有操作都会返回错误消息

 Fatal: role h9uest does not exist 

h9uest是我的帐户名称,我sudo apt-get install在此帐户下sudo apt-get install PostgreSQL 9.1。
类似的错误仍然存​​在的root帐户。

您可能需要使用系统用户postgres来创build您的数据库 – 只要您没有为与您的同名系统用户对应的名为“h9uest”的数据库用户设置(并给予必要的权限),那么它是由默认的identvalidation方法启用的。

 sudo su - postgres 

或者更现代的forms:

 sudo -u postgres -i 

正如这里和这里推荐的。

然后再试一次。 当以系统用户postgres身份操作完成时键入exit

阅读手册中的数据库angular色和客户端身份validation 。

在尝试了许多其他人的解决scheme后,没有成功,这个答案终于帮助了我。

https://stackoverflow.com/a/16974197/2433309

总之,跑步

 sudo -u postgres createuser owning_user 

创build名称owning_user(在这种情况下,h9uest)的angular色。 之后,你可以运行rake db:create从任何帐户名称的terminal设置,而不必进入postgres环境。

 sudo su - postgres psql template1 

在pgsql上创build具有“超级用户”权限的angular色

 CREATE ROLE username superuser; eg. CREATE ROLE demo superuser; 

然后创build用户

 CREATE USER username; eg. CREATE USER demo; 

为用户分配权限

 GRANT ROOT TO username; 

然后启用login该用户,所以你可以运行例如: psql template1 ,从普通的$terminal:

 ALTER ROLE username WITH LOGIN; 

这适用于我:

 psql -h localhost -U postgres 

使用apt-get安装postgres不会创build用户angular色或数据库。

为您的个人用户帐户创build超级用户angular色和数据库:

sudo -u postgres createuser -s $(whoami); createdb $(whoami)

在本地用户提示符下,不是root用户提示符下键入

 sudo -u postgres createuser <local username> 

然后为本地用户input密码。

然后input生成“angular色”用户名“不存在的以前的命令”。

上面的步骤解决了我的问题。 如果没有,请发送上述步骤的terminal消息。

遵循这些步骤,它会为你工作:

  1. 运行msfconsole
  2. 键入db_console
  3. 有些信息会显示给你,select了告诉你的信息: db_connect user:pass@host:port.../database抱歉,我不记得它,但它是这样的,然后replace用户和密码和主机和数据库中包含的信息包含在database.yml中: /usr/share/metasploit-framework/config
  4. 你会看见。 在后台重build模型caching。
  5. 更新后重新启动terminal和午餐msfconsole和它的工作,你可以通过在msfconsole: msf>db_statusinputmsfconsole: msf>db_status您将看到它已连接,请更新apt-get update && apt-get upgrade。

工作方法,

  1. vi /etc/postgresql/9.3/main/pg_hba.conf
  2. local all postgres peer在这里改变同行相互信任
  3. 重新启动, sudo service postgresql restart

  4. 现在试试, psql -U postgres

卸载所有内容并保留Postgres.app:

 brew cask uninstall postgres brew uninstall postgres brew cask install postgres rm -rf /Applications/Postgres93.app/ # shutdown any postgres instance # open postgres.app -> "Initialize" 

我想要PostgreSQL 9.6