首先,非常抱歉我对此一窍不通。我真的尽力在寻找解决方案,但现在我被卡住了,完全不知所措。
我正在尝试将Rails 3应用部署到远程服务器上;当我在本地虚拟机上开发时,没有出现任何问题。但是现在,当我尝试运行
rake db:create
出现错误(已经翻译成中文,因为我是法国人):
FATAL : password authentication failed for user <<mylogin>>
这是我的database.yml文件:
login: &login
adapter: postgresql
username: mylogin
password: mypassword
host: localhost
port: 5432
encoding: UTF8
development:
<<: *login
database: somesite_development
test:
<<: *login
database: somesite_test
production:
<<: *login
database: somesite_production
使用命令行工具“createuser”在PostgreSQL中创建了名为“mylogin”的用户,该用户被授权创建数据库。postgresql.conf配置服务器监听本地主机。我已经尝试了许多关于pg_hba.conf的方法,但无论使用何种方法(ident、password、md5)连接127.0.0.1上的用户“mylogin”,都会认证失败——尽管我从未遇到过使用psql连接/创建数据库时出现问题的情况。
有什么线索吗?
编辑:好吧,我发现自己是多么愚蠢...我的用户密码根本没有设置!我想我忘记在之后加上分号了。
ALTER USER xxxx WITH PASSWORD xxxx ;
...我通过请求“SELECT * FROM pg_shadow;”发现了这一点——密码字段为空。因为这个愚蠢的错误,我浪费了三天时间...