我正在设置一台新计算机以使用现有的 Rails 应用程序(带有 Postgres 的 Rails 3.2)。我通过自制软件安装了 postgres,以及这里记录的午餐 gem:http ://www.moncefbelyamani.com/how-to-install-postgresql-on-a-mac-with-homebrew-and-lunchy/ 。获取用户帐户和启动/运行我的应用程序没有问题。我运行 rake db:create:all 来创建所有数据库。该站点仅从一个终端选项卡运行和加载。
当我在同一位置打开一个新选项卡并尝试启动服务器时,我收到以下错误:
Users/jpetrarca/.rvm/gems/ruby-2.0.0-p247/gems/activerecord-3.2.13/lib/active_record/connection_adapters/postgresql_adapter.rb:1216:in `initialize': could not connect to server: No such file or directory (PG::Error)
19:24:39 web.1 | Is the server running locally and accepting
19:24:39 web.1 | connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?
我不知道为什么一个终端会话可以工作而另一个不能。
有趣的是,我可以从非工作终端使用午餐启动/停止 postgres,事实上,它确实使用相同的服务并关闭从工作终端访问的数据库(这是预期的)。
我最初在尝试运行我的 rspec 测试并连接到测试数据库时发现了这个问题。