#django #postgresql #amazon-web-services #amazon-ec2 #amazon-elastic-beanstalk
#django #postgresql #amazon-веб-сервисы #amazon-ec2 #amazon-elastic-beanstalk
Вопрос:
Я столкнулся с ситуацией, когда мое приложение django не может подключиться к экземпляру postgres, которые оба были развернуты в одной и той же среде EBS.
-
Я подтвердил, что группы безопасности, в которых находятся экземпляры RDS и EC2, настроены для взаимодействия.
-
Я подтвердил, что учетные данные для базы данных верны, поскольку я могу использовать CLI для postgres для входа как локально, так и при подключении по ssh к экземпляру EC2.
-
Третий и самый странный из симптомов заключается в том, что миграции работают. Итак, во время миграции приложение может подключаться к базе данных и запускать миграции, но при попытке получить доступ к этим таблицам через
views.py
файлы я получаю страшнуюpassword authentication failed
ошибку.
Я полностью застрял и пробовал все, что мог придумать, в течение последних нескольких часов. Любая помощь, которую я могу получить, была бы огромной помощью. Спасибо!
Комментарии:
1. вы задаете значения по умолчанию, такие как
DB_PASSWORD=os.environ.get(DB_PASS,"somedefault")
и, возможно, env не загружается, я однажды столкнулся с такой же проблемой, и ошибка не загружала env должным образом. сделайтеprint(DB_PASSWORD)
и проверьте2. итак, похоже, что это сработает, если я переключу версии Postgres? На самом деле это не объясняет, почему миграции работают, а сторона только для чтения — нет, но, похоже, сейчас это работает
Ответ №1:
Хорошо, к сожалению, я не обязательно знаю, почему это так, но, похоже, проблема была устранена, если я переключил экземпляр RDS Postgres с версии 11.1 на версию 10.x. Надеюсь, это сэкономит кому-то еще немного времени! Извините, я не могу указать, почему это исправлено
Комментарии:
1. может быть еще одна причина, я думаю, но хорошо, что это решило вашу проблему