Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 13963|Ответ: 0

[Источник] MySQL использует профилирование для анализа причин медленного выполнения SQL-операторов

[Скопировать ссылку]
Опубликовано 06.07.2017 11:12:17 | | | |

Коллега из CleverCode недавно порекомендовал инструмент для анализа sql-операторов в MySQL — профилирование, и обнаружил, что этот инструмент очень хорош, он может точно анализировать конкретное время, затраченное на SQL-операторы в процессе запроса. CleverCode резюмирует это здесь и делится с вами.

1 Введение

Query Profiler MySQL — это очень удобный инструмент для анализа диагностики запросов, с помощью которого можно получить потребление нескольких ресурсов во всём процессе выполнения запроса, таких как CPU, IO, IPC, SWAP и т.д., а также обнаружение ошибок страницы, переключения контекста и т.д., а также определить местоположение каждой функции, вызванной MySQL, в исходном файле во время выполнения запроса.

MySQL версии 5.0.37 и более позднее поддерживает функцию отладки PROFILING, которая позволяет понимать детали ресурсов, потребляемых SQL-операторами. Поскольку требуется вызов функции getrusage() системы, её можно использовать только на платформах классов Linux/Unix, а не на Windows. Кроме того, PROFILING предназначен для обработки процессов, а не потоков, и другие приложения на сервере могут влиять на результаты отладки, поэтому этот инструмент подходит для отладки в процессе разработки, и если вы хотите отладить в производственной среде, обратите внимание на его ограничения.

2 Эксплуатация

2.1 Проверьте, включён ли профиль, он по умолчанию отключён.


2.2 Включите профилирование. Профилирование переменных — это пользовательская переменная, которую необходимо вновь включать каждый раз.


2.3 Выполните следующие операторы: Чтобы избежать предварительного хранения SQL в QCACHE, рекомендуется заставить оператор SELECT не выполнять обнаружение QCACHE при выполнении SQL. Это позволяет предоставить точность анализа.


2.4 ИспользованиеЗапрос к профилю шоуСамый свежийИнформация о выполнении оператора。 (Анализ: выберите sql_no_cache count(*) из system_user, где возраст > 20)




2.5 Использование профилей шоу. Просмотрите список операторов, выполняемых на сервере. (идентификатор запроса, потраченное время, утверждение).




2.6 Используйте профиль шоу для запроса информации о выполнении ID формулировки. Здесь мы анализируем утверждение с ID 6. (Анализ: выберите sql_no_cache count(*) из system_user, где возраст > 20).


2.7 Получите CPU и блокируйте потребление ввода-вывода.




2.8 Получение дополнительной информации. можно получить, выполнив «ПОКАЗАТЬ ПРОФИЛЬ *** ДЛЯ ЗАПРОСА n». Адрес для справки: http://dev.mysql.com/doc/refman/5.6/en/show-profile.html.







Предыдущий:Отчёты новичков
Следующий:Громкие новости! Разработка мини-программ бесплатна!
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com