diff --git a/extensions/mysql/mysql/MyDriver.cpp b/extensions/mysql/mysql/MyDriver.cpp index 70dedac2..d0d1a4df 100644 --- a/extensions/mysql/mysql/MyDriver.cpp +++ b/extensions/mysql/mysql/MyDriver.cpp @@ -101,6 +101,12 @@ MYSQL *Connect(const DatabaseInfo *info, char *error, size_t maxlength) mysql_options(mysql, MYSQL_OPT_CONNECT_TIMEOUT, (const char *)&(info->maxTimeout)); } + /* Have MySQL automatically reconnect if it times out or loses connection. + * This will prevent "MySQL server has gone away" errors after a while. + */ + my_bool my_true = true; + mysql_options(mysql, MYSQL_OPT_RECONNECT, (const char *)&my_true); + if (!mysql_real_connect(mysql, info->host, info->user,