У меня проблемы с подключением приложения Flask к экземпляру RDS, и я не знаю, как это исправить.
Используя онлайн-интерфейс AWS, я создал новый экземпляр RDS и подключил группу безопасности с правилом для входящего трафика:
| Type | Protocol | Port Range | Source
| All traffic | All | All | 0.0.0.0/0
Экземпляр RDS находится в рабочем состоянии, и его статус доступен (работает на порту 5432).
Мое приложение фляги до этого момента работало с использованием локального sqlite
файл базы данных, поэтому теперь я пытаюсь перенести его в облако.
Для этого (используя AWS CLI) я создал новый экземпляр Elastic Beanstalk (который также работает с нормальным состоянием), и все в порядке.
Я обновил SQLALCHEMY_DATABASE_URI
переменная в моем config.py
файл для чтения:
SQLALCHEMY_DATABASE_URI="postgresql::/<username>:<password>@<host name>/<dbname>"
На этом этапе я предположил, что могу выполнить миграцию, используя Flask-Migrate
package, и он заполнит мой экземпляр RDS этими таблицами. Похоже, это не так. Не уверен, что я наивен или пропустил шаг?
ошибка, которую я получаю:
sqlalchemy.org.OperationalError: (pysycopg2.OperationalError) FATAL: database "master" does not exist
Чтобы убедиться, что база данных действительно существует, я запустил через терминал следующее:
nc -zv <hostname> <port>
который возвращает соединение.
Может, проблема в межсетевом экране?