python - SQLAlchemy(MySQL) और फ्लास्क का उपयोग करते समय MySQL कनेक्शन उपलब्ध नहीं है



flask flask-sqlalchemy (1)

सुनिश्चित करें कि 'pool_recycle विकल्प' का मान आपके MYSQLs wait_timeout मान से कम है, जब SQLAlchemy 'create_engine' फ़ंक्शन का उपयोग करते समय

engine = create_engine("mysql://username:[email protected]/myDatabase", pool_recycle=3600)

अपना सत्र बनाने के लिए scoped_session का उपयोग करने का प्रयास करें:

from sqlalchemy.orm import scoped_session, sessionmaker
session = scoped_session(sessionmaker(autocommit=False, autoflush=False, bind=engine))

और अपना डेटा पुनर्प्राप्त करने के बाद अपना सत्र बंद करें / निकालें।

session.query(Foo).all()
session.close()

मुझे यह त्रुटि कुछ समय मिल रही है (कुछ समय ठीक है, कुछ समय गलत है):

sqlalchemy.exc.OperationalError: (OperationalError) MySQL Connection not available.

session.query का उपयोग करते समय

मैं फ्लास्क और एसक्यूएललेमी (MySQL) के साथ एक साधारण सर्वर लिख रहा हूं मेरे जैसे app.py :

Session = sessionmaker(bind=engine)
session = Session()

@app.route('/foo')
def foo():
    try:
        session.query(Foo).all()
    except Exception:
        session.rollback()

अपडेट मैं एक और फाइल में नया session भी app.py और इसे app.py में कॉल app.py

Session = sessionmaker(bind=engine)
session = Session()

def foo_helper(): #call in app.py
    session.query(Something).all()

अद्यतन 2 मेरा engine :

engine = create_engine('path')

मैं इस त्रुटि से कैसे बच सकता हूं?

धन्यवाद!





flask-sqlalchemy