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
添加角色和密码