Полезные команды для проверки работы 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 самых медленных запросов. Если изменить цифру соответственно выведется нужное количество запросов сортировкой по самому долгому выполнению. После этого вы уже сможете анализировать их и оптимизировать скрипты. 

4 КОММЕНТАРИИ

  1. я строке следующую команду:

    # mysqlcheck –optimize –all-databases

    Она выполнит оптимизацию всех баз данных в Mysql. Если вам нужно оптимизировать только одну конкретную базу данных, то используйте команду

    # mysqlcheck –optimize <имя_базы_данных>

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

  2. ой строке следующую команду:
    # mysqlcheck –optimize –all-databases
    Оптимизация таблиц конкретной базы данных
    Если необходимо оптимизировать только определенную базу данных, то используем следующую команду:
    # mysqlcheck –optimize имя_базы_данных
    Создание резервной копии базы данных
    Для создания резервной копии базы данных используем следующую команду:
    # mysqldump –user=пользователь –password=пароль имя_базы_данных > имя_файла.sql
    Восстановление базы данных из резервной копии
    Для восстановления базы данных из резервной копии используем следующую команду:
    # mysql –user=пользователь –password=пароль имя_базы_данных < имя_файла.sql

  3. ом окне следующую команду:
    # mysqlcheck –optimize –all-databases
    Эта команда пройдет по всем базам данных на сервере и произведет их оптимизацию, устраняя фрагментацию таблиц и упорядочивая данные. Это поможет улучшить производительность базы данных и ускорить выполнение запросов.

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь

63 − = 58

OK2WEB
OK2WEB
Более 12 лет занимаюсь разработкой и продвижением сайтов. Городские порталы, информационные и новостные сайты. Сейчас в основном разрабатываю интернет магазины и коммерческие сайты. Если у вас есть вопросы пишите, стараюсь оперативно ответить и помочь.

Как избавиться от нагрузка на сервере или хостинге сайта, в nginx убираем вредных ботов

Итак сегодняшняя тема статьи это вопрос нагрузки которая возникает на сайте. Недавно мне пришлось столкнуться с этим. На большом мощном сервере просто висело порядка 22 LA в htop и никаким образом не было видно каких экстремальных посещаемостей. Это надо было устранять и начал ковыряться...

Добавление к товарам Woocommerce покупки по запросу для нулевых цен

Редко но возникает ситуация когда необходимо для части товаров выставить цену по запросу на товары. Я не сторонник такого подхода, но объективно иногда это необходимо и поэтому потребовалось простое решение, которое позволит такое реализовать. Покопался поискал и нашёл добавил на сайт сниппет, который позволяет...

Решение ошибки: WordPress database error Duplicate entry ‘0’ for key ‘wp_posts.PRIMARY’ for query INSERT INTO `wp_posts`

Делал сайт и столкнулся с такой ошибкой. Почитал, поискал, никто не дает решения. Ошибка проявляет себя так, что при добавлении записи на сайте Wordpress у вас нет интерфейса для добавления статьи и по сути исчезает возможность добавлять статьи. Решение оказалось простым. Зашел в базу данных...

Справочник по Fastpanel вопросы и ответы (обновляется)

Fastpanel - это веб-панель управления для хостинга и управления виртуальными серверами. Эта панель предоставляет администраторам серверов и владельцам веб-сайтов набор инструментов для упрощения управления серверами, приложениями и веб-сайтами. Вот основные возможности и предназначение Fastpanel: Управление серверами: Fastpanel позволяет администраторам легко создавать, настраивать и удалять...

Вывод товаров случайным образом – полезные сниппеты Woocommerce

К существующим вариантам вывода товаров по дате, цене, рейтингу добавляем возможность вывода в случайном порядке. Также просто сниппет для Woocommerce, вставлять в файл function темы либо через плагин вставки кода. При необходимости можете поменять текст отображения вывода.

Вывод похожих товаров по атрибуту – полезные сниппеты Woocommerce

По умолчанию Woocommerce товары выводятся в виде похожих из товаров в категории. Это неудобно, так как не позволяют вывести в каталоге товаров правильно похожие. Решаем задачу просто с помощью сниппета. Вставляем в function.php или в место для кода вот такой сниппет: В данном варианте выведен...