MySql.Data.MySqlClient.MySqlException: время ожидания истекло
В последнее время определенная страница в моем веб-приложении вызывает
Сведения об исключении: MySql.Data.MySqlClient.MySqlException: таймаут истекший. Период ожидания истекает до завершения или сервер не отвечает.
Хотя я использую Ibtais в качестве слоя persistence, эта ошибка возникает. Я перезапустил экземпляр службы MySql, но, похоже, я получаю ту же ошибку. Раньше этого не случалось, но часто случалось в последнее время.
Все веб-приложения, развернутые на сервере, используют Ibatis, а сервер БД остается на том же компьютере, на котором установлен IIS. Существует около 8000 записей, в которых от 300 до 500 будет отфильтровано при загрузке страницы
Любые идеи для причины проблемы?
Ответы
Ответ 1
Я столкнулся с той же проблемой с вашей, и я нашел это MySQLConnection - указание времени ожидания команды по умолчанию.
Просто добавьте " время ожидания команды по умолчанию= xxx" в ваш connectString, это значение ключа находится в секундах.
Я пробовал, и это сработало для меня.
Ответ 2
Вы можете установить время ожидания команды на 0, но это не очень хорошая идея. Некоторые запросы могут продолжаться бесконечно.
Существует основная проблема, вызывающая тайм-аут запросов в первую очередь. Вы вставляете, обновляете или каким-либо образом работаете с большими двоичными значениями, которые блокируют таблицу? Это самая распространенная причина, по которой я вижу такую ошибку при таком небольшом количестве данных.