Les serveurs MySQL sont configurés pour gérer un nombre limité de connexions. Ce n'est pas une bonne pratique d'attacher une connexion que vous n'utilisez pas constamment. Donc, généralement, vous devez fermer la connexion dès que vous en avez terminé et vous reconnecter uniquement lorsque vous en avez à nouveau besoin. Les connexions de MySQLdb sont des gestionnaires de contexte, vous pouvez donc utiliser la with-statement
syntaxe pour rendre la fermeture de la connexion automatique.
connection = MySQLdb.connect(
host=config.HOST, user=config.USER,
passwd=config.PASS, db=config.MYDB, )
with connection as cursor:
print(cursor)
# the connection is closed for you automatically
# when Python leaves the `with-suite`.
Pour plus de robustesse, vous pouvez utiliser try..except pour gérer le cas où (même lors de la première exécution) connect
ne parvient pas à établir une connexion.
Cela dit, je le mettrais simplement dans une entrée crontab et renoncerais à dormir.