尝试创建数据库时出错 - Ecto - Phoenix

时间:2016-07-19 02:00:40

标签: postgresql elixir phoenix-framework ecto

我在尝试创建数据库时遇到错误。我安装了postgres,我已经成功完成了一些测试项目。而且,我没有看到这个错误。任何帮助都会很棒:

ERROR:

 ~/Desktop/elixir/restore $ mix ecto.create
** (Mix) The database for Restore.Repo couldn't be created: tcp connect: connection refused - :econnrefused

21:52:23.978 [error] GenServer #PID<0.150.0> terminating
** (Postgrex.Error) tcp connect: connection refused - :econnrefused
    (db_connection) lib/db_connection/connection.ex:148: DBConnection.Connection.connect/2
    (connection) lib/connection.ex:623: Connection.enter_connect/5
    (stdlib) proc_lib.erl:240: :proc_lib.init_p_do_apply/3
Last message: nil
State: Postgrex.Protocol

2 个答案:

答案 0 :(得分:10)

今天尝试运行mix ecto.create时遇到了同样的问题。 所以首先要确保你有postgres。建议使用brew来安装它。

brew install postgres

使用brew服务来启动/停止postgresql,

创建数据库

创建postgres超级用户,

可能您需要授予文件夹权限。

这些链接对我很有用:

psql: FATAL: role "postgres" does not exist

psql: FATAL: database "<user>" does not exist

答案 1 :(得分:3)

我遇到了同样的问题,问题是postgres没有运行。

所以,要检查一下,你应该运行:

brew services list

然后,如果你看到:

Name Status User Plist postgresql stopped

你应该跑:

brew services start postgresql

喝彩!