我跑了rake test
,得到以下错误:
/Users/username/.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.7/lib/active_record/connection_adapters/postgresql_adapter.rb:1213:in `initialize': could not connect to server: Permission denied (PG::Error)
Is the server running locally and accepting
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?
.
.
. (many filenames)
.
.
Errors running test:units! #<PG::Error: could not connect to server: Permission denied
Is the server running locally and accepting
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?
>
Errors running test:functionals! #<RuntimeError: Command failed with status (1): [/Users/username/.rvm/rubies/ruby-2.0.0-p0/bin/...]>
这是什么意思?我应该怎么做才能解决这个问题?此外,它似乎与 PostgresSql 有关,但我相信我不使用那个数据库。(在哪里可以检查?)所以这没有意义......
更新:我错了,有postgresql。这是我的config/database.yml
文件:
test:
adapter: postgresql
encoding: unicode
database: db_test
pool: 5
username: db
password:
production:
adapter: postgresql
encoding: unicode
database: db_production
host: xx.xxx.xxx.xxx
pool: 5
username: xxxxx
password: xxxxxxx
这是我的 Gemfile 中的数据:
#Running a Postgres Database
gem 'pg'
#And using redis for KVS
gem 'redis'
#Behind a Thin Server
gem 'thin'
我现在正在本地机器上工作,这是我拉的一个项目。也许我的本地机器有一个特定的数据库(我相信我正在使用 mysql)但应用程序期待另一个?
更新:我的本地机器(Mac os)确实有 postgresql,我可以使用which psql
. 如何配置数据库并使其正常运行而不会出错?