Database Connection Failed

I’m installing phoenix, for now, I have a problem to connect on my local database which is PostgreSQL when I run mix ecto.create this is the error I get:

Compiling 14 files (.ex)
Generated demo app

23:12:59.230 [error] GenServer #PID<0.374.0> terminating
** (DBConnection.ConnectionError) tcp connect (localhost:5432): connection refused - :econnrefused
    (db_connection 2.2.2) lib/db_connection/connection.ex:87: DBConnection.Connection.connect/2
    (connection 1.0.4) lib/connection.ex:622: Connection.enter_connect/5
    (stdlib 3.12.1) proc_lib.erl:249: :proc_lib.init_p_do_apply/3
Last message: nil
State: Postgrex.Protocol
** (Mix) The database for Demo.Repo couldn't be created: killed

Here is the config/dev.exs file the part of the database:

username: "mucort",
database: "demo",
hostname: "localhost",
show_sensitive_data_on_connection_error: true,
pool_size: 10

I just removed the password field here

I’m connecting to it in my terminal it works:

psql --dbname=demo --username=mucort --host="localhost" --port=5432 --password

Please I need your help

Are you running your application in a container? Or natively on the same host as the database, without any containerisation or virtualization in-between?

Yes it is natively no containerisation or virtualization in-between

Show us your Demo.Repo source? It should look something like this:

defmodule Demo.Repo do
  use Ecto.Repo,
    otp_app: :demo,
    adapter: Ecto.Adapters.Postgres
end

@dimitarvp the content in lib/demo_app/repo.ex:

defmodule DemoApp.Repo do
  use Ecto.Repo,
    otp_app: :demo_app,
    adapter: Ecto.Adapters.Postgres
end

I think you’ll have to work on your pg_hba.conf file but not sure. Make certain that you’re allowed and trusted not only through domain sockets but network connections as well.

Ecto by default use TCP to connect on postgresql and it allows to use a unix socket

in dev.exs remove hostname and add:

socket_dir: "/var/run/postgresql"

Glad it works for you on dev, I just prefer to change the security settings of PG a little. :slight_smile: