2

我正在尝试遵循GraphQL 教程

我使用asdf来安装erlangelixirpostgres。我用的是macbook。

当我进入运行步骤时mix ecto.setup,出现以下错误:

20:44:47.318 [错误] GenServer #PID<0.1605.0> 终止 ** (DBConnection.ConnectionError) tcp connect (localhost:5432): connection denied - :econnrefused (db_connection) lib/db_connection/connection.ex:163: DBConnection.Connection.connect/2 (connection) lib/connection.ex:622: Connection.enter_connect/5 (stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3 最后一条消息:nil 状态:Postgrex.Protocol ** (混合)无法创建 Community.Repo 的数据库:引发异常:** (DBConnection.ConnectionError) tcp connect (localhost:5432): connection denied - :econnrefused (db_connection) lib/db_connection/connection.ex: 163:DBConnection.Connection.connect/2(连接)lib/connection.ex:622:Connection.enter_connect/5(stdlib)proc_lib.erl:249::proc_lib。init_p_do_apply/3

它可能是什么?

4

1 回答 1

3

您必须启动 postgres,根据asdf-postgree 文档,您必须:

pg_ctl start

为了运行命令mix ecto.createmix ecto.setup您必须使用密码 postgres创建用户postgres,并且 postgres 用户必须同时具有LOGINCREATEDB权限,然后您可以:

创建默认数据库:

createdb default

登录到该数据库,使用:

psql -d default

并创建具有权限的用户:

# CREATE ROLE postgres LOGIN CREATEDB PASSWORD 'postgres';
于 2019-02-10T23:40:20.997 回答