mysql сильно грузит процессор

230
03 января 2019, 05:40

Всем добрый день! Прошу помощи, совета, подсказки в моей проблеме.

Имеем выделенный сервер 2х Xeon E5-2670, 64Gb RAM, 240Gb SSD. На сервере расположен единственный проект среднего уровня. В проекте присутствует база данных из 3 таблиц. Загруженность MySQL:

root@d:/var/log/mysql# mysqladmin status Uptime: 5562 Threads: 132 Questions: 581856 Slow queries: 0 Opens: 359 Flush tables: 1 Open tables: 322 Queries per second avg: 104.612

К таблицам выполняется достаточно большое количество запросов SELECT, UPDATE, INSERT.

Первая таблица - SELECT и UPDATE запросы, редко INSERT. Таблица InnoDB, примерно 12000 записей.

Вторая таблица основная, "рабочая", в ней постоянно присутствует ~500 000 записей. INSERT, UPDATE, SELECT присутствует в полном объеме, в час пик порядка 300-400 запросов в секунду именно к этой таблице. MyISAM.

Третья таблица MyISAM, самая "тяжелая" - порядка 150 миллионов записей. Запросы к ней не частые, это INSERT (по 500-1000 строк) и SELECT (полнотекстовый). Ключи на месте, запросы выполняются быстро.

Расставлены ключи на основные поля, запросы выполняются достаточно быстро, slow-запросы в логах отсутствуют.

На сервере сайт расположен всего неделю, но уже сейчас в часы активности наблюдаются серьезные "провалы" в работе сайта. MySQL сильно грузит процессор, в htop'е периодически появляется

При этом Load average в пределах нормы и в целом сервер работает стабильно.

Ищу причины происходящего.

Что делал: -расставлял дополнительные ключи, сейчас практически все поля по которым -выполняются запросы являются ключами. - ковырялся в конфигурации mysql. Признаюсь честно, не эксперт в этом вопросе - поэтому ничего конкретного тут не сделано и пользы от этого не замечено

Подозреваю - нужно что то менять в конфиге mysql Возможно - переводить рабочую таблицу в InnoDB.

В интернете попадаются похожие проблемы, но решения найти не удалось.. Прошу помощи, друзья, в решении моей проблемы.

READ ALSO
Вывести данные с разбивкой по месяцам

Вывести данные с разбивкой по месяцам

В таблице данные хранятся с привязкой по времениНо время в unixtime

210
MySQL - Рекламные кампании и блеклист

MySQL - Рекламные кампании и блеклист

Есть 2 таблицы "campaigns" и "bl_sites"

210
Как выровнять строки при flex flex-wrap wrap?

Как выровнять строки при flex flex-wrap wrap?

Если высота элемента становится больше, то он получается выше чем остальные элементы на той же строкеИ важно чтобы эти элементы выводились...

185