PG :: ConnectionBad:FATAL:用户“alphauser”的密码validation失败

我正在为我的大学研究Rails中的应用程序。 申请是由前一年的学生开始的,现在是我和我的同事转而继续工作。 我从github上获取了应用程序,我运行了bundle install,但是什么时候运行rake db:migrate我得到了这个PG::ConnectionBad: FATAL: password authentication failed for user "alphauser" 。 在database.yml我有这些

  development: adapter: postgresql encoding: unicode database: alpha_database host: localhost pool: 5 username: alphauser password: alphapassword 

我不知道在这种情况下该怎么做。

您必须手动创建相应的用户和数据库,如下所示:

在shell中: psql

然后:

  create user alphauser with password 'alphapassword'; create database alpha_database owner alphauser; alter user alphauser superuser createrole createdb replication; \q 

不要忘记分号。

所以问题在于使用database.yml文件的rails应用程序尝试连接到本地数据库并且无法找到用户alphauser (因为我假设您使用的是与之前学生不同的计算机/环境)。

数据库的用户与应用程序类似,postgres文档非常密集,但我想如果你可以创建一个用户alphauser ,并使其成为密码alphapassword那么你将为你的app创建一个新的干净数据库,你可以运行rake db:migrate

Postgres docs: http : //www.postgresql.org/docs/9.2/static/app-createuser.html

尝试从命令行createuser -P -s -e alphauser运行此命令

这将提示输入密码,即alphauserpassword

尝试使用:

sudo -u postgres createuser –interactive –pwprompt

添加角色和密码