sql >> Databasteknik >  >> RDS >> PostgreSQL

hur man fixar OperationalError:(psycopg2.OperationalError) server stängde anslutningen oväntat

Samma logik för sqlalchemy.orm, (som flask_sqlalchemy bygger på btw)

engine = sqlalchemy.create_engine(connection_string, pool_pre_ping=True)

Fler skyddsstrategier kan ställas in som det beskrivs i dokumentet:https://docs.sqlalchemy.org/en/13/core/pooling.html#disconnect-handling-pessimistic

Till exempel, här är min motorinstans:

engine = sqlalchemy.create_engine(connection_string,
                                      pool_size=10,
                                      max_overflow=2,
                                      pool_recycle=300,
                                      pool_pre_ping=True,
                                      pool_use_lifo=True)

sqlalchemy.orm.sessionmaker(bind=engine, query_cls=RetryingQuery)

För RetryingQuery-kod, se:Försök igen misslyckades sqlalchemy-frågor



  1. Matcha utbud med efterfrågan – lösningar, del 3

  2. Flask-SQLAlchemy Gemener Index - hoppa över funktion, stöds inte av SQLAlchemy-reflektion

  3. MySQL - ignorera infogningsfel:dubblettpost

  4. Java JDBC MySQL-undantag:Operation inte tillåten efter att ResultSet stängts