Подтвердить что ты не робот

Каков наилучший способ диагностики и профилирования MySQL на реальном сервере?

Какие инструменты/методы вы рекомендуете диагностировать и профилировать MySQL на реальном сервере?

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

4b9b3361

Ответ 1

Прежде всего, вы должны настроить какой-то мониторинг, например:

Другие могут быть полезными: mytop innotop mtop maatkit

В дополнении вы должны включить logging медленные запросы в my.cnf.

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

Ответ 2

Это то, над чем я работал совсем немного.

  • MonYog - служба мониторинга MySQL. Мы используем это в производстве. Он не является бесплатным, но имеет множество функций, включая предупреждения и исторические данные.

  • MySQL Enterprise Monitor - доступно с помощью предприятия MySQL (т.е. не дешево)

  • Сверните свой собственный!

О рулоне свой вариант:

На самом деле мы разработали действительно классное приложение для мониторинга, которое использует инструмент RRD (используемый общим MRTG) и комбинацию статистики MySQL и системную статистику, такую ​​как iostat. Это было не просто отличное упражнение, но и предоставило нам массу гибкости, чтобы точно отслеживать, что мы хотим от одного интерфейса.

Вот Краткое описание некоторых подходов к построению вашей собственной статистики.

Одна из наших больших побудительных моментов для нашей собственной работы, хотя мы также используем MonYog, заключалась в отслеживании статистики диска. Диск-ящик может быть основным узким местом, а стандартные системы мониторинга MySQL не имеют мониторинга ввода-вывода. Мы используем iostat, который является частью systat пакет.

У нас есть интерфейс, который отображает графики статистики MySQL рядом со статистикой диска i/o, позволяя нам реально получить общую картину того, как нагрузка MySQL влияет на работу диска.

До этого мы действительно не знали, почему наши производственные приложения увязли. Мы обнаружили, что дисковый i/o был серьезной проблемой, и что MySQL создавал много временных таблиц на диске, когда мы запускали сложные запросы. Мы смогли оптимизировать наши запросы и значительно повысить производительность диска.

Ответ 5

Также добавьте в список: RHQ 4 (с открытым исходным кодом) - http://rhq-project.org/