web-dev-qa-db-fra.com

Comment définir le délai de connexion dans SQLAlchemy

J'essaie de comprendre comment définir le délai de connexion dans create_engine(), jusqu'à présent, j'ai essayé:

create_engine(url, timeout=10)

TypeError: argument (s) non valide (s) 'timeout' envoyé à create_engine (), à l'aide de la configuration PGDialect_psycopg2/QueuePool/Engine. Vérifiez s'il vous plaît que les arguments de mots clés sont appropriés pour cette combinaison de Composants.

create_engine(url, connection_timeout=10)

TypeError: argument (s) non valide (s) 'connection_timeout' envoyé à create_engine (), en utilisant la configuration PGDialect_psycopg2/QueuePool/Engine. Veuillez vérifier que le mot clé les arguments sont appropriés pour cette combinaison de composants.

create_engine(db_url, connect_args={'timeout': 10})

(psycopg2.OperationalError) option de connexion non valide "temps libre"

create_engine(db_url, connect_args={'connection_timeout': 10})

(psycopg2.OperationalError) option de connexion non valide "délai de connection dépassé"

create_engine(url, pool_timeout=10)

Que devrais-je faire?

17
daveoncode

La bonne façon est celle-ci (connect_timeout au lieu de connection_timeout):

create_engine(db_url, connect_args={'connect_timeout': 10})

... et cela fonctionne avec Postgres et MySQL

29
daveoncode

La valeur par défaut pour connect_timeout pour Mysql5.7 est 10 secondes

Aussi peut-être pertinent:

0
deargle

Pour sqlite backend:

create_engine(db_url, connect_args={'connect_timeout': timeout})

définira le délai de connexion sur timeout

0
pbn