LoginSignup
18

More than 5 years have passed since last update.

PostgreSQLに接続しようとしたらエラーが出た

Posted at

Railsの勉強するのにWEBアプリケーションを作成しようとした。最終的にHerokuへデプロイするのでDBをPostgreSQLに設定しようとしたときに躓いた話。

環境

OS:windows10
ただし開発はWindows Subsystem for Linux(Ubuntu 16.04.5)

エラー

ローカル環境にPostgreSQL環境を構築しようとした際に出てきたエラー。Rails sすると出てくる。

could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

google翻訳で和訳してみる

サーバーに接続できませんでした:そのようなファイルまたはディレクトリはありませんサーバーはローカルで実行されており、Unixドメインソケット "/var/run/postgresql/.s.PGSQL.5432"で接続を受け入れていますか?

エラーコードでぐぐってみると、PATHが原因とか/var/run/postgresql/の設定が違うとかいろいろ出てきた。たぶん検索した内容の方が正解なのだろうけど、駆け出しエンジニアには厳しい内容だと感じた。ただでさえなれないCUI環境でファイルの編集とか厳しいっす。もっと簡単に解決できないか試行錯誤していたら解決策を発見した。

対策

database.ymlのdevelopmentを以下のように編集する。

database.yml
(省略)

development:
  <<: *default
  database: データベース名
  host: localhost
  port: 5432

(省略)

たったこれだけ。hostをlocalhostに指定し、portを5432に指定しただけ。ね、簡単でしょ?

本来だとPostgreSQLの方で設定するべきなのだろうけど、勉強中のひとやPC慣れしていない人にとってはこれでいいのではないかと。
あとから勉強してこの記述が不要になるようにしたいところ。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18