Fai:
con.query('SET GLOBAL connect_timeout=28800')
con.query('SET GLOBAL interactive_timeout=28800')
con.query('SET GLOBAL wait_timeout=28800')
Significato del parametro (preso da MySQL Workbench nel Navigatore:Istanza> File delle opzioni> Scheda "Rete"> Sezione "Impostazioni di timeout")
- connect_timeout :Numero di secondi in cui il server mysqld attende un pacchetto di connessione prima di rispondere con 'Bad handshake'
- timeout_interattivo Numero di secondi in cui il server attende l'attività su una connessione interattiva prima di chiuderla
- wait_timeout Numero di secondi in cui il server attende l'attività su una connessione prima di chiuderla
A proposito:28800 secondi sono 8 ore, quindi per un tempo di esecuzione di 10 ore questi valori dovrebbero essere effettivamente più alti.