| |
В 3 части вы ознакомились с методами отладки приложений в случаях если запрос играет лишь косвенную роль в проблеме.
Я хотела бы обратить ваше внимание на то, что мы рассмотрели только наиболее часто встречающиеся случаи в то время как MySQL сервер имеет много параметров, каждый из которых может влиять на поведение приложения. Анализируйте параметры, которые вы применяете. Один из приёмов: запустить тот же запрос, используя MySQL сервер, запущенный с опцией no-defaults и посмотреть отличается ли результат. Если результат отличается, проанализируйте влияние параметра ещё раз и исправьте проблему.
Приём 24: проверяйте запросы на сервере, запущенном с опцией --no-defaults и сравнивайте результат.
Ниже приведён список приёмов, рассмотренных в этой части.
Приём 15: проверяйте значение max_allowed_packet и размер передаваемых данных если сервер выдаёт ошибку для синтаксически правильного запроса.
Приём 16: проверяйте значение wait_timeout и других timeout-ов, если вы встречаете ошибку "MySQL server has gone away"
Приём 17: проверяйте значение connect_timeout в случае ошибки Lost connection to MySQL server at 'reading authorization packet'
Приём 18: всегда используйте error log
Приём 19: используйте general query log если error log не содержит информации о причинах крушения сервера.
Приём 20: всегда проверяйте достаточно ли у вас RAM для выделенных буферов.
Приём 21: устанавливайте значение max_connections таким какое вы сможете обслужить.
Приём 22: используйте средства мониторинга вашей операционной системой чтобы установить что потребляет избыточное количество ресурсов, которое приводит к крушению MySQL сервера.
Приём 23: Используйте опцию log_warnings=2 чтобы отследить имеются ли у вас отклонённые соединения.
Приём 24: проверяйте запросы на сервере, запущенном с опцией --no-defaults и сравнивайте результат.
Назад | Содержание | Вперёд |
Автор 2009 Света Смирнова COPYRIGHT © 2009 С.Смирнова и С.Ласунов sveta_гав_js-client_точка_com |
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |