我最近升级到 OSX 10.7,此时我的 rails 安装在尝试连接到 psql 服务器时完全失败了。当我从命令行使用
psql -U postgres
它工作得很好,但是当我尝试使用相同的用户名和密码运行 rails 服务器或控制台时,我得到了这个错误
...activerecord-3.0.9/lib/active_record/connection_adapters/postgresql_adapter.rb:950:in `initialize': could not connect to server: Permission denied (PGError) Is the server running locally and accepting connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?
任何可能发生的想法都会非常有帮助!谢谢!
这是一个路径问题。Mac OSX Lion 现在在系统中包含 Postgresql。如果您这样做,which psql您可能会看到HomeBrew 正确的是哪个而不是哪个usr/bin/psql。usr/local/bin/psql如果您运行brew doctor,您应该会收到一条消息,说明您需要添加usr/local/bin到 PATH 环境变量的头部。
which psql
usr/bin/psql
usr/local/bin/psql
brew doctor
usr/local/bin
编辑您的 .bash_profile 或 .profile,或您正在使用的任何 shell 并添加: export PATH=/usr/local/bin:$PATH
export PATH=/usr/local/bin:$PATH
作为第一个导出PATH然后退出你的shell会话或源你的文件,source ~/.bash_profile现在应该可以了。
PATH
source ~/.bash_profile