在PostgreSQL中配置用户名和密码

时间:2017-10-22 10:38:22

标签: ruby-on-rails postgresql unix psql

我刚刚在psql中重置了我的密码,方法是将我的pg_hba.conf文件编辑为

local  all  all  trust

之后再将其改回

local  all  all  md5

后。执行此操作后,我尝试重新启动psql服务器,但我发现通过pg_ctl命令无法访问任何服务器,例如,如果我尝试:

pg_ctl -D /Library/PostgreSQL/9.6/data restart

回复是:

pg_ctl: could not open PID file 
"/Library/PostgreSQL/9.6/data/postmaster.pid": Permission denied 

我能够打开psql的唯一方法是使用此命令:

 psql -U postgres

因为如果我只是尝试psql',则响应如下:

psql: FATAL:  role "robertosullivan" does not exist

我需要找到一些用我的用户名和新密码连接到psql的方法,以便我可以在Rails中使用psql和我的应用程序。

非常感谢任何建议,谢谢。

2 个答案:

答案 0 :(得分:1)

首先," robertosullivan"不存在。这意味着您已使用一个根本不存在的用户帐户配置了PG。似乎最简单的方法就是像这样创建用户:

sudo -u postgres createuser robertosullivan -s
sudo -u postgres psql
postgres=# \password your-password

答案 1 :(得分:0)

以下查询可能对您有所帮助

psql -h localhost -U postgres -d postgres