У меня есть приложение python (да sh и графически), которое я пытаюсь запустить на AWS EBS. Он успешно работал, когда я извлекал данные из разных API в приложении python (tradingEconomics и fredapi).
С тех пор я создал базу данных RDS, чтобы я мог извлечь из API один раз, сохранить данные и получить к ним доступ. Мне удалось успешно подключиться к базе данных (добавить и извлечь из нее) при локальном запуске через py mysql. Как я это делаю, ниже:
from sqlalchemy import create_engine
engine = create_engine('mysql+pymysql://USERNAME:PASSWORD@WHAT_I_CALLED_DATABASE_INSTANCE_ON_RDS.ApPrOpRiAtEcHaRaCtErS.us-east-1.rds.amazonaws.com/NAME_OF_DATABASE_I_CREATED_ON_MYSQLWORKBENCH')
dbConnection = engine.connect()
returned_frame = pd.read_sql("SELECT * FROM nameOfTableICreatedOnMySQLWorkbench", dbConnection)
Как я уже сказал, это работает при локальном запуске. Не работает при попытке запустить на EBS. (Я получаю внутреннюю ошибку сервера 500, основываясь на журналах, в которых, похоже, это проблема.)
Я думаю, что я открыл входящие и исходящие разрешения для экземпляра базы данных на RDS, как некоторые предлагали, но, возможно, Я неправильно понял. Это не сработало.
Если у вас есть дополнительные вопросы для уточнения, не стесняйтесь спрашивать.