我在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
在这种情况下,我不知道该怎么做。
答案 0 :(得分:12)
您必须手动创建相应的用户和数据库:
shell中的:
psql
然后:
create user alphauser with password 'alphapassword';
create database alpha_database owner alphauser;
alter user alphauser superuser createrole createdb replication;
\q
不要忘记分号。
答案 1 :(得分:3)
尝试使用:
sudo -u postgres createuser --interactive --pwprompt
添加角色和密码
答案 2 :(得分:2)
问题在于您的rails应用程序使用database.yml
文件尝试连接到本地数据库而无法找到用户alphauser
(因为我假设您正在使用不同的计算机/环境与以前的学生一样。)
数据库的用户与应用程序类似,postgres文档非常密集,但我猜你是否可以创建用户alphauser
,并使其成为密码alphapassword
然后你将为您的应用创建一个新的干净数据库,您可以在其上运行rake db:migrate
。
Postgres文档:http://www.postgresql.org/docs/9.2/static/app-createuser.html
尝试从命令行createuser -P -s -e alphauser
这将提示输入密码alphauserpassword
答案 3 :(得分:1)
create user alphauser with password 'alphapassword';
然后
rake db:setup