Closed5

【PostgreSQL】Connection to server on socket "/tmp/.s.PGSQL.5432" failed: No such file or directory

yusukeyusuke

ひしぶりに PostgreSQL 触ろうと思ったら、いつのまにか使えなくなった。
似たようなエラー対処法がいくつかあったが、それでは対処できなかったのでメモ。

yusukeyusuke

ターミナルで psql を実行すると、以下のエラーが表示。

psql: error: connection to server on socket "/tmp/.s.PGSQL.5432" failed: No such file or directory
yusukeyusuke

とりあえずググった対処法を実行するが、同じエラーが表示される。再インストールも試みたが動作せず。

ほとんどの対処法は、以下を実行すると解決されるとあるが、全く解決できない...。

$ brew services restart postgresql
$ rm /usr/local/var/postgres/postmaster.pid
$ brew postgresql-upgrade-database

https://zenn.dev/tetsuya/articles/d5e0aef6f7144f

yusukeyusuke

【解決法】

1. ログを見る

どうやら前のバージョンが干渉しているっぽい。

$ cd ~/homebrew/var/log
$ cat postgres.log
postgres.log
FATAL:  database files are incompatible with server
DETAIL:  The data directory was initialized by PostgreSQL version 13, which is not compatible with this version 14.0.

2. ファイル削除

PostgreSQL とロックファイルを手動で削除する。

$ cd ~/homebrew/var
$ rm -rf postgres
$ cd ~/homebrew/var/homebrew/locks
$ rm -rf postgresql.formula.lock

3. 再インストール

最後に再インストールして解決 🎉

$ brew install postgres
$ psql
$ createdb `whoami`
$ psql
$ psql: error: connection to server on socket "/tmp/.s.PGSQL.5432" failed: FATAL:  database "xxxx" does not exist
$ createdb `whoami` // データベースを作成で解決
このスクラップは2021/11/03にクローズされました