Rubyが好きなプログラマーの日記。日々の生活、開発に関するメモとか考えとか。
仕事で使ってたMacbook Airの液晶が壊れてしまったので、Macbook Proに買い直した。Retina、すごいですね。 と言ってばかりもいられないので、開発環境をセットアップしようと、homebrewでPostgreSQLをインストールしてセットアップしてたら、以下のエラーが出た。
$ createuser -d psqluser
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create more new roles? (y/n) n
createuser: could not connect to database postgres: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?
Unixドメインソケットのファイルが無いということだが、ディレクトリがそもそも存在してない。 調べてみると、同様の議論があって、対応方法が書いてあった。
やり方は簡単で、ディレクトリを作成して、PostgreSQLの設定ファイルでそこを見るように指定してあげればいい。
$ sudo mkdir /var/pgsql_socket
$ sudo chown youraccoutname:admin /var/pgsql_socket
としてから、PostgreSQLの設定ファイル/usr/local/var/postgres/postgresql.conf
のunix_socket_directories
を
unix_socket_directories = '/var/pgsql_socket'
に変更して、再起動したら使えるようになった。