LINUX.ORG.RU

[MySQL] кто жрет ресурсы?

 


0

0

mysql занимает ~50% времени. mytop способен лишь сказать, что qps > 70, т.е. медленных запросов нет.

Но как понять что именно пожирает ресурсы, отправляя огромное количество простых запросов? Нет ли какого инструмента, кой показал бы нагрузку (в qps, в секундах) mysql по пользователем, хостам?

На сервере порядка десяти различных проектов.

P.S. Да, скорее всего окажется, что эта какая-нибудь Joomla c VM. Ну почему OpenSource такое дерьмо?


> Ну почему OpenSource такое дерьмо?

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

helios ★★★★★
()
Ответ на: комментарий от helios

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

Какие коммиты? Когда я первый раз увидел, что Joomla+VM на КАЖДУЮ страницу делает более 1000 (sic!) запросов... Я был поражен. Это ТАЛАНТ! Именно на таких людях и держится вся индустрия IT!!

Однако, пусть и тысяча, но я там не ожидаю большой посещаемости. Потому нужен какой-то мониторинг MySQL, что бы не гадать.

PavelR
() автор топика

какая-нибудь Joomla

ССЗБ. А мы вот с говном не работаем

MySQL нормально настрой, хотя бы с помощью mysqltunner - потом уже профайлингом занимайся.

BigAlex ★★★
()
Ответ на: комментарий от PavelR

>более 1000 (sic!) запросов
ОМГ, я конечно знал, что универсальные CMS — это УГ, но чтобы НАСТОЛЬКО о_О

xorik ★★★★★
()
Ответ на: комментарий от PavelR

> Когда я первый раз увидел, что Joomla+VM на КАЖДУЮ страницу делает более 1000 (sic!) запросов...

Да, за такое говно нужно отрывать руки. Почему же вы им пользуетесь?

helios ★★★★★
()
Ответ на: комментарий от xorik

универсальные CMS

Ну вот, например, про Drupal не могу сказать ничего плохого. Хотя это больше CMF, чем CMS, но все же универсальности ей не занимать. Joomla эта такая же параша как Bitrix - PHP-быдлокодинг в апофеозе. Я пробовал их и как разработчик, и как хостер - в жизни своей хуже ничего не видел.

BigAlex ★★★
()
Ответ на: комментарий от BigAlex

>Ну вот, например, про Drupal не могу сказать ничего плохого

Зато я могу: знаю один сайт на друпале, там 30 страниц (текст+картинки). Так вот, база данных этого сайта занимает больше 50Мб на диске!

xorik ★★★★★
()
log_slow_queries = /var/log/mysql/mysql-slow.log
long_query_time = 1
# Опционально
log-queries-not-using-indexes

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

Другой момент — это то, что MySQL может быть хреново сконфигурирован (как это обычно бывает в 90% случаев), поэтому можно найти утилиты mysqltuner и ей подобные, запустить и внимательно почитать рекомендации.

ЗЫ — дерьмо не OpenSource, дерьмо — это быдлокодеры.

sjinks ★★★
()
Ответ на: комментарий от sjinks

> Перезапускаем мускул, оставляем на пару часов/сутки, наслаждаемся логом

Друзья, вы меня с кем-то путаете: я знаю про Explain, slow_query_log, mysqldumpslow.

long_query_time - не поможет, ибо запросы очень простые, их не видно в mytop.

log-queries-not-using-indexes - все будет засрано. На сотне строк никто не делает индексы.

MySQL может быть хреново сконфигурирован (как это обычно бывает в 90% случаев)

1G отдан под индексы. И mysql их почти полностью сжирает. mysqltuner ничего особого не говорит.

Ещё раз - пусть будут тысячи оптимальных, использующих индексы запросов. Кто жрет ресурсы?

PavelR
() автор топика
Ответ на: комментарий от helios

> Да, за такое говно нужно отрывать руки. Почему же вы им пользуетесь?

Потому что быдлоконтора с копеечными бюджетами.

PavelR
() автор топика
Ответ на: комментарий от sergej

> Включи логирование всех sql запросов - мож поможет.

Включу. А чем анализировать то затем этот гигобайтый лог??

PavelR
() автор топика
Ответ на: комментарий от MikeDM

> mytop поможет поглядеть в реальном времени на запросы.

Только qps в нем можно посмотреть. И пару случайных из сотен запросов.

PavelR
() автор топика
Ответ на: комментарий от xorik

занимает больше 50Мб

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

BigAlex ★★★
()
Ответ на: комментарий от PavelR

Вообщем, на версии > 5.1.21 можно сделать например так

slow_query_log          = 1
slow_query_log_file     = /var/log/mysql/mysql-slow.log
long_query_time 	= 0.01

А если long_query_time выставить в 0, то медленные логи засосут все-все запросы.

BigAlex ★★★
()
Ответ на: комментарий от BigAlex

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

Ага, могу ещё поплакаться. На большой посещаемости Joomla засирает таблицу сессий и все встает колом.

PavelR
() автор топика
Ответ на: комментарий от BigAlex

> Смотри Maatkit - остальное все мало юзабельно

Да, что сверх замечательное! В манах даже потенциальные опасности прописаны. В умной книжке (high...) ещё про HachMySQL упоминается.

PavelR
() автор топика
Ответ на: комментарий от BigAlex

Вообщем, ещё раз спасибо. Все что нужно нашел:

mk-query-digest --group-by user,tables --report-format profile /var/log/mysql/slow.log

PavelR
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.