Assurez-vous que la valeur de 'pool_recycle option' est inférieure à la valeur wait_timeout de votre MYSQL lorsque vous utilisez la fonction SQLAlchemy 'create_engine'.
engine = create_engine("mysql://username:[email protected]/myDatabase", pool_recycle=3600)
Essayez d'utiliser scoped_session
pour faire votre session :
from sqlalchemy.orm import scoped_session, sessionmaker
session = scoped_session(sessionmaker(autocommit=False, autoflush=False, bind=engine))
et fermer/supprimer votre session après avoir récupéré vos données.
session.query(Foo).all()
session.close()