Heroku PG :: ConnectionBad: FATAL: роль "xxxxxxxxxxx" не разрешена для входа - PullRequest
0 голосов
/ 02 мая 2019

Я создал новую базу данных postgres на Heroku для моего стека Rails. Роль, кажется, не работает. Я не могу сказать, использует ли он старую роль.

Я попытался сбросить базу данных из командной строки.

heroku run rake db:setup

Я ожидал, что Heroku настроит подходящую роль для управления базой данных из командной строки.

Ответы [ 2 ]

1 голос
/ 02 мая 2019

rake db:setup пытается создать базу данных перед загрузкой схемы и заполнением ее. Вы не можете создать базу данных таким образом, используя Heroku Postgres :

Вы не можете создавать или изменять базы данных и роли в Heroku Postgres. SQL ниже только для справки.

В зависимости от ваших потребностей, вы можете запустить heroku pg:reset DATABASE, где DATABASE - имя существующей базы данных Postgres, чтобы удалить и воссоздать эту базу данных, за которой следуют heroku run db:schema:load и heroku run db:seed. (Возможно, у вас уже есть база данных.)

Если это не подходит, вы можете предоставить базу данных Heroku Postgres , затем загрузить свою схему и заполнить ее. Но имейте в виду, что у вас, вероятно, уже есть база данных:

Прежде чем предоставлять Heroku Postgres, убедитесь, что он не уже не подготовлен для вашего приложения (Heroku автоматически предоставляет Postgres для приложений, которые включают в себя определенные библиотеки, такие как pg Ruby gem).

Используйте команду heroku addons, чтобы определить, есть ли в вашем приложении настроенная Heroku Postgres

0 голосов
/ 02 мая 2019

Проверьте, правильно ли выполняются ваши миграции. Я столкнулся с этой проблемой, потому что мои миграции Rails были сломаны. Затем попробуйте протолкнуть ваши изменения через конвейер Gitub / Heroku CI или как бы вы ни настраивали рабочий процесс. Не пытайтесь использовать эту команду heroku напрямую, как сказал Крис.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...