Подключение развернутого приложения фляги к базе данных, размещенной на другом сервере / провайдере - PullRequest
1 голос
/ 06 мая 2019

Мне бы очень хотелось узнать или указать в правильном направлении, как подключить развернутое приложение фляги к базе данных mysql, размещенной на другом сервере / базе данных.Я буду либо развертывать с PythonAnywhere или Linode, но не знаю, как бы я подключил его к базе данных, которая размещена на другом сервере Linux.У меня есть доступ к этому серверу, мне дали учетные данные ssh и ip.Нужно ли создавать SSH-туннель через мое размещенное приложение?Я новичок и никогда раньше не развертывал флеш-приложение, поэтому я особенно шокирован развертыванием и подключением его к уже развернутой базе данных.Спасибо, ребята.

1 Ответ

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

Вероятность того, что вы используете механизм декларирования, в котором вы определяете свою БД.

Распространенным способом является установка (чувствительных к паролю) переменных, таких как URL базы данных в среде.

export DB_URL=mysql://root:root@127.0.0.1:3306/database 

Измените этот URL на целевой хост и убедитесь, что этот хост принимает входящие соединения.В вашем приложении вы можете сослаться на это:

import os
from sqlalchemy import create_engine
from sqlalchemy.orm import scoped_session, sessionmaker
from sqlalchemy.ext.declarative import declarative_base

engine = create_engine(os.getenv('DB_URL'))
db_session = scoped_session(sessionmaker(autocommit=False,
                                         autoflush=False,
                                         bind=engine))
Base = declarative_base()

http://flask.pocoo.org/docs/1.0/patterns/sqlalchemy/

...