1.はじめに
railsでアプリを作成し、サーバーを立ち上げrails s
を行い、http://localhost:3000/XX
にアクセスしました。
すると、ActiveRecord::ConnectionNotEstablished
と表示されました。
2.使用環境
- mac.os バージョン10.15.6
- Ruby 2.6.6
- Rails 6.0.3.5
- psql (PostgreSQL) 12.6
3.実際のエラー
4.試したこと
4.1 データベースの確認
# 利用可能な全てのデータベースを一覧表示する
hogehoge@hogenoAir sample_app % psql -l
psql: error: 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"?
4.2 postmaster.pidの削除
hogehoge@hogenoAir sample_app % rm /usr/local/var/postgres/postmaster.pid
こちらを試すと、うまくいきました。
補足 /usr/の場所
macの場合、Finderの移動タブから、フォルダへ移動
を選択し、/usr/
と入力すると表示されます。
4.3 データベースを起動させているか確認する
# 起動
hogehoge@hogenoAir sample_app % pg_ctl -l /usr/local/var/postgres/server.log start
waiting for server to start.... done
server started
# 停止
hogehoge@hogenoAir sample_app % pg_ctl stop
waiting for server to shut down.... done
server stopped
起動するとエラーが解消されました。
5.まとめ
今回はリンクの5番に近い状況で、
① パソコンがフリーズ
② 全て保存・終了して再起動
③ 表題のエラーが表示される ...という流れでした。
②で全て終了していたはずが、うまく終了されなかったようです。
傷がついてしまったpostmaster.pid
を削除することで、解決できました。
6.参考リンク
1:PostgreSQL 9.1.5文書
2.Postgresqlに接続できなくなった時
3.Postgres could not connect to server
4.【Mac】Finderから /usr / local ディレクトリを参照する
5.Mac+HomebrewでPostgreSQLが起動しない場合の対応
7.最後に
記事の感想や意見、ご指摘等あれば伝えていただけるとありがたいです。
読んでいただき、ありがとうございました。