【发布时间】:2014-10-25 23:42:08
【问题描述】:
我在 Debian 7 下使用带有 postgresql 9.1 的 rails 4.1.5,但我无法在我的开发环境中创建数据库。当我跑步时
bin/rake db:create
我明白了
home/rs/.rvm/gems/ruby-2.1.2/gems/activerecord-4.1.5/lib/active_record/connection_adapters/postgresql_adapter.rb:898:in `rescue in connect': FATAL: database "direct-dev" does not exist
Run `$ bin/rake db:create db:migrate` to create your database (ActiveRecord::NoDatabaseError)
from /home/rs/.rvm/gems/ruby-2.1.2/gems/activerecord-4.1.5/lib/active_record/connection_adapters/postgresql_adapter.rb:888:in `connect'
from ...
我正在尝试创建数据库,因此它自然不存在。但是 rails 应该创建它...这是我的 config/database.yml:
default: &default
adapter: postgresql
encoding: unicode
pool: 5
development:
<<: *default
database: direct-dev
这是 postgresql 日志的一部分:
2014-09-01 19:30:40 CEST LOG: connection received: host=[local]
2014-09-01 19:30:40 CEST LOG: connection authorized: user=rs database=direct-dev
2014-09-01 19:30:40 CEST FATAL: database "direct-dev" does not exist
你有什么建议吗?我已经在这里待了一个多小时,仍然无法理解为什么会这样......
谢谢!
【问题讨论】:
-
username和passowrd怎么样? -
我认为不是这样:我使用的是postgresql“对等”身份验证方法;无论如何,以防万一,我还在database.yml中添加了
username和password,但仍然出现同样的错误。我还认为,如果是身份验证问题,postgres 在抱怨数据库之前会抱怨用户不存在。