У меня есть существующее приложение Rails, которое ранее успешно выполнялось на моем локальном ноутбуке (работающем под управлением OSX) с базой данных, хранящейся локально в PostgreSQL. Я также успешно развернул приложение Rails к Elastic Beanstalk с базой данных в RDS - размещенный сайт все еще запущен.Rails среда разработки, пытающаяся подключиться к базе данных AWS, а не localhost PostgreSQL
Я не прикоснулся к версии LOCALHOST в течение нескольких месяцев и попытался запустить его сегодня с помощью rails server -e development
, но при посещении http://localhost:3000/ как обычно, я получаю сообщение об ошибке PG
PG :: ConnectionBad в/FATAL : пароль аутентификации не удалось для пользователя "murjfphxxxxxx" FATAL: нет записи pg_hba.conf для хозяина "115.xxx", пользователя "murjfphxxxxxx", база данных "d37vsvehxxxxxx", SSL от
Та же ошибка возникает в консоль Rails. Похоже, что версия разработки пытается подключиться к базе данных AWS, а не к базе данных localhost, но я не могу понять, почему.
/config/database.yml перечисляет среды разработки, как:
development: adapter: postgresql encoding: unicode database: <my-app>_development host: localhost pool: 5 username: postgres password: <password>
Я могу подключиться к базе данных через локальный PG PSQL и увидеть содержимое, так что кажется, что база данных локального PG действует ,
Зачем нужна среда разработки для подключения к версии базы данных AWS? Пожалуйста, дайте мне знать, если вам нужна дополнительная информация, чтобы отладить это.
Использование рубиново-2.3.1, Rails 4.2.0, PostgreSQL 9.6.0.0
Вы пытались запустить «rails s RAILS_ENV = development» только для того, чтобы убедиться, что он использует надлежащую среду? – Coolness
@Coolness жаль, что я хотел упомянуть, что я уже пробовал это - я отредактировал вопрос. Это не имело никакого значения для результата –
у вас есть 'DATABASE_URL' var в вашем env? (вы можете проверить, набрав в терминале 'env | grep DATABASE_URL') – Esse