PG Error could not connect to server: Connection refused Is the server running on port 5432?
macos, postgresql, ruby, ruby-on-rails-4
Solution
This is easier than you think because if you update your Mac then the process will run, but the `postmaster.pid` file is missing from `/usr/local/var/postgres/`. So you need to start process for postgres which creates postmaster.pid.
If postgres is running then:
Stop manually:
pg_ctl -D /usr/local/var/postgres stop -s -m fast
Start manually:
pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
Now all should be working.
Problem
I recently updated my machine (MacBook Pro running Mountain Lion) and ever since then, whenever I set up a rails project, my machine craps out and cannot connect to PG. Currently, this is the error I am getting when I try to go to localhost; PG::ERROR could not connect to server: Connection refused Is the server running on host "localhost" (::1) and accepting TCP/IP connections on port 5432? could not connect to server: Connection refused Is the server running on host "localhost" (127.0.0.1) and accepting TCP/IP connections on port 5432? could not connect to server: Connection refused Is the server running on host "localhost" (fe80::1) and accepting TCP/IP connections on port 5432? Here is a checklist, and list of things I have tried; - PostgreSQL version is 9.3.4 - I have it installed through HomeBrew - I have `host: localhost` in my database.yml file - Rails version 4.1.1, ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-darwin12.5.0] - Ran `brew uninstall postgresql` then `brew install postgresql` - Tried to access my postgres.conf file but wasn't allowed through PGAdmin and command line Ran `locate pg_hba.conf` and terminal shot this out; ``` WARNING: The locate database (/var/db/locate.database) does not exist. ``` I have also tried using rails 4.0 but I still get the problem I can still work on other projects on my machine that were started/finished before I updated my computer. When I run `psql` from my terminal I get `psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432"?` I am really lost here, and am not sure what else to do. Any help would be much appreciated. UPDATE: Thanks to this question, all was resolved by simply downloading Postgres.app for Mac. Everything works great now.