sepertinya koneksi MySQL Anda kehabisan waktu setelah lama tidak aktif, saya yakin itu tidak akan terjadi jika Anda terus-menerus menanyakan DB Anda dengan pengaturan yang ada. Ada beberapa pengaturan di sisi MySQL dan sql yang harus menyelesaikan masalah ini:
-
periksa
pool_recycle
mesin SQLa Anda nilai, coba nilai yang berbeda / lebih kecil, mis. 1800 (dtk). Jika Anda membaca pengaturan DB dari file, setel sebagaipool_recycle:1800
jika tidak, tentukan selama init mesin, mis.
from sqlalchemy import create_engine
e = create_engine("mysql://user:[email protected]/db", pool_recycle=1800)
-
periksa / ubah
wait_timeout
Anda Variabel MySQL, lihat https://dev .mysql.com/doc/refman/5.6/en/server-system-variables.html#sysvar_wait_timeout yang merupakan jumlah detik server menunggu aktivitas pada koneksi noninteraktif sebelum menutupnya. misalnyatampilkan variabel global seperti 'wait_timeout';
temukan kombinasi yang sesuai untuk lingkungan Anda.