Homebrew postgres broken
homebrew, macos, postgresql
Solution
I had the same problem installing postgres using homebrew on a freshly installed Yosemite.
First off my brew config looks like this:
HOMEBREW_VERSION: 0.9.5
ORIGIN: https://github.com/Homebrew/homebrew
HEAD: 9f6926265f8e4be7cc80dfe9042f2cd3c1e8dc9e
Last commit: 64 minutes ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_CELLAR: /usr/local/Cellar
CPU: quad-core 64-bit sandybridge
OS X: 10.10.1-x86_64
Xcode: 6.1.1
Clang: 6.0 build 600
X11: N/A
System Ruby: 2.0.0-481
Perl: /usr/bin/perl
Python: /usr/bin/python
Ruby: ~/.rvm/rubies/ruby-2.1.1/bin/ruby
First thing i noticed was that I had no write permission to `/usr/local/var/postgres`. This was easily changed issuing `sudo chown -R `whoami` /usr/local/var/postgres` then I reinstalled postgresql and did
`cat /usr/local/var/postgres/server.log`
which revealed:
`postgres cannot access the server configuration file "/usr/local/var/postgres/postgresql.conf": No such file or directory`
So I removed the directory `/usr/local/var/postgres` and issued the command to initialize the database.
`initdb -D /usr/local/var/postgres/`
This seemed to have done the trick and postgres is running fine.
Problem
I installed Postgresql 9.4.0 installed on my Mac (10.10.1/Yosemite) using homebrew. It does not work. I have created the softlink to /usr/local/opt/postgresql/homebrew.mxcl.postgresql.plist in ~/Library/LaunchAgents. If I try to manually load postgres I get the message that the "Operation is in progress" ``` > launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist /usr/local/Cellar/postgresql/9.4.0/homebrew.mxcl.postgresql.plist: Operation already in progress ``` However postgres does not appear to be running. ``` > ps auxw | grep post billmcn 670 0.0 0.0 2424272 452 s000 R+ 10:12PM 0:00.01 grep post ``` and I cannot connect with the command line client. ``` > psql 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"? ``` To my knowledge I have tried all the fixes suggested on other Stackoverflow threads discussing this problem. Specifically: - I have uninstalled and reinstalled postgres and the accompanying Ruby gem. There is no postgres 8.0 version on my machine. - I have verified that the psql client program is the 9.4.0 version installed by Homebrew and not a Mac system binary. - I have verified that the /usr/local/var/postgres/postmaster.pid does not exist. - I have rebooted the machine. I did have Homebrew postgres working on this machine earlier. I think what broke it is upgrading from version 8 to version 9 but I'm not sure. I don't have any databases I need to preserve. I'm willing to start clean with postgres; I just need to get it to work now. Any ideas? The issue appears to have been permissions on the /usr/local/var/postgres directory. Here is what my var directory looked like when things weren't working. ``` ll /usr/local/var/ drwxr-xr-x 3 billmcn admin 102 Dec 20 12:44 cache drwxr--r-- 2 root admin 68 Dec 29 21:37 postgres ``` (whoami = "billmcn") I deleted /usr/local/var/postgres, uninstalled and reinstalled postgres, and now it looks like this. ``` ll /usr/local/var/ drwxr-xr-x 3 billmcn admin 102 Dec 20 12:44 cache drwx------ 23 billmcn admin 782 Dec 30 10:51 postgres ``` Not sure how it got into this state because I don't remember futzing with the permissions on this directory, but no matter. It works now.