Полезные команды для проверки работы MySql

Собрал список, который занимал у меня штук 30 открытых вкладок. Когда я понял, что сил по ним бегать нет, то решил собрать такой материал, в котором будут все необходимые команды для проверки работы базы данных Mysql и тестирования различных параметров. Теперь постараюсь всё это собрать воедино и сохранить. Кто читал предыдущую мою статью про настройки my.cnf тот уже видел, что я активно занимаюсь оптимизацией базы данных.

Mysqltuner команды проверки и реагирования

Название конечно звучит странно, но в этой части статьи именно все команды для проверки работы Mysql с помощью mysqltuner и соответственно необходимые команды для того, чтобы устранить некоторые проблемы. 

Что такое mysqltuner думаю обьяснять не надо, как и его задачу – проверку Mysql параметров. Зачастую кстати он выдаёт одинаковые рекомендации, но чтобы запустить его надо просто в командной строке набрать

# mysqltuner

Оптимизация всех баз данных

После этого начнется проверка параметров Mysql и появится вывод информации. Как правило в самом начале выходят данные о фрагментации баз данных, их необходимо оптимизировать. Для этого вводим в командную строку следующую команду:

Восстановление & Оптимизация
mysqlcheck -Aor -p
Только воcстановление
mysqlcheck -Ar -p
Только оптимизация
mysqlcheck -Ao -p

Описание аргументов:
-A – Проверить на ошибки все Mysql базы данных
-r – Отремонтировать все Mysql базы данных
-o – Оптимизировать все Mysql базы данных
-p – Для доступа к базе используется пароль

После этого начинается оптимизация баз данных, которые имеют не оптимизированные таблицы. 

Вывод данных состояния MYSQL

Теперь следующий блок запросов, которые вводятся в Mysql для вывода данных о состоянии переменных

show status LIKE "Key%"; – выводит данные о состояние буфера ключей

show status LIKE "Opened_tables%"; – выводит данные об открытых таблицах

show status LIKE "Threads_running%" – вывод данных исходя из параметров умножения количества threads на параметры sort_buffer

show status LIKE "Max_used_connections%"; – данные о максимальном количестве одновременных подключений к базе. Помогает настроить максимальное количество подключений. 

SHOW STATUS LIKE 'Qcache%'; – выводит данные о работе кеша определенного query_cache_limit и query_cache_size. 

show processlist; – данные о процессах Mysql

FLUSH QUERY CACHE – дефрагментировать кэш Mysql

Оптимизация медленных запросов Mysql

Следующая часть посвящена тому, как определить медленные запросы к Mysql и анализировать их.

Для начала снова обратимся к файлу конфигурации MySQl – my.cnf. Здесь необходимо обратить внимание на такой пункт настроек, как лог медленных запросов. Выглядит он так:

#log_slow_queries = /var/log/mysql/mysql-slow.log

#long_query_time = 15

#log-queries-not-using-indexes

Здесь вы видите 3 пункта. Определение где будет храниться лог запросов, определение количества секунд выполнения запроса, которые должны заноситься в лог и указание записывать отсутствие индексов у баз данных. Включаем все три и через некоторое время проводим анализ с помощью команды:

mysqldumpslow -s c -t 10

Эта команда выведет 10 самых медленных запросов. Если изменить цифру соответственно выведется нужное количество запросов сортировкой по самому долгому выполнению. После этого вы уже сможете анализировать их и оптимизировать скрипты. 

РЕКОМЕНДУЕМ

Как использовать консоль браузера Chrome для поиска и исправления ошибок JavaScript

Если ваш веб-сайт перестает нормально работать, консоль браузера - это первое место, на которое вам следует обратить внимание для диагностики проблемы. В большинстве популярных...

Как работать с header в теме Newspaper: делаем лого и настраиваем...

После выхода последних двух версия Newspaper темы, в ней появились новые, очень интересные особенности управления элементами сайта. По сути команда Newspaper реализовала свой блочный...

Пять главных стандартных инструментов системного администратора Centos

Этот блог во многом сохранение для меня еще некоторых данных. Поэтому я пишу бывает и очень такие понятные вещи, чтобы в будущем мог для...

Что такое LVM, принцип работы и детали использования

LVM, или Logical Volume Manager, - это решение для создания разделов томов Linux, которое существует уже некоторое время и предоставляет ряд расширенных...
Alecs Retin
Работаю в сфере web с 2009 года. Занимался созданием своих проектов в разных тематиках. В основном делаю сайты на Instantcms и Wordpress. Оказываю услуги разработки сайтов и стартапов, инвестирую в интернет проекты и сервисы. Более 10 лет занимаюсь Web разработкой и создание интернет проектов. Интернет магазины, информационные порталы, городские порталы. Оказываю поддержку в развитии и продвижении сайтов.