Есть ли инструмент, который будет автоматически создавать индексы mysql на основе медленных запросов?

Есть ли инструмент, который будет автоматически создавать индексы mysql на основе медленных запросов?


Ответы (1 шт):

Автор решения: PZBird

Нет, не существует продукта, который автоматически выполнял бы создание индекса на основании slow query. По крайней мере, для MySQL.

Существуют инструменты, которые определяют медленные запросы и даже автоматически запускают EXPLAIN, например pt-query-digest. Но какие индексы ставить - зависит только от вас и от вашего кода. Существует слишком много сценариев, когда вы правильнее создать индекс отличный от очевидного в slow query (а может быть проще композитный или переписать запрос) или не создавать рекомендуемый индекс, так как просадка выполнения произошла из-за железа или стороннего процесса.

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

→ Ссылка