Quizás debería instalar la base de datos MySQL de forma local y externa. Cuando el software se está cargando, simplemente use la base de datos local. Cuando todo esté bien, sincronice el local con la base de datos en vivo y cambie el enlace de la base de datos del local al vivo. No detenga la base de datos local porque si Internet se cae, debe poder guardar datos usando la base de datos local.
Siempre sincronice en vivo con local, por lo que si Internet está activo, use la base de datos en vivo pero también la local. Todo debe estar sincronizado. Los datos estarán siempre en la computadora como "copia de seguridad" o base de datos fuera de línea y su base de datos en vivo tendrá todo de todas partes.
Use un búfer, por lo que necesitará perder su consulta en el vacío. Además, en Windows, puede usar el servicio para iniciar y detener MySQL.
Espero haber respondido algunas de sus preguntas.