Соединение разорвано при запуске команды mix ecto.setup, пакеты установлены с asdf - PullRequest
0 голосов
/ 11 февраля 2019

Я пытаюсь следовать учебнику GraphQL .

Я использую asdf для установки erlang , эликсир и postgres .Я использую macbook.

Когда я добираюсь до шага для запуска mix ecto.setup, я получаю следующую ошибку:

20: 44: 47.318 [ошибка]GenServer #PID <0.1605.0> прекращение ** (DBConnection.ConnectionError) tcp connect (localhost: 5432): соединение отклонено -: 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 Последнее сообщение: ноль Состояние: Postgrex.Protocol ** (Mix) База данных для Community.Repoне удалось создать: возникла исключительная ситуация: ** (DBConnection.ConnectionError) tcp connect (localhost: 5432): соединение отклонено -: 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

Что это может быть?

1 Ответ

0 голосов
/ 11 февраля 2019

Вы должны запустить postgres, в соответствии с asdf-postgree docs вам необходимо:

pg_ctl start

И для запуска команд mix ecto.create и mix ecto.setup вынеобходимо создать пользователя postgres с паролем postgres, а пользователь postgres должен иметь права на оба LOGIN и CREATEDB , тогда вы можете:

Создайте базу данных по умолчанию:

createdb default

Войдите в эту базу данных с помощью:

psql -d default

И создайте пользователя с разрешениями:

# CREATE ROLE postgres LOGIN CREATEDB PASSWORD 'postgres';
...