Есть ли инструмент, который будет автоматически создавать индексы mysql на основе медленных запросов?
Есть ли инструмент, который будет автоматически создавать индексы mysql на основе медленных запросов?
Ответы (1 шт):
Нет, не существует продукта, который автоматически выполнял бы создание индекса на основании slow query. По крайней мере, для MySQL.
Существуют инструменты, которые определяют медленные запросы и даже автоматически запускают EXPLAIN, например pt-query-digest. Но какие индексы ставить - зависит только от вас и от вашего кода. Существует слишком много сценариев, когда вы правильнее создать индекс отличный от очевидного в slow query (а может быть проще композитный или переписать запрос) или не создавать рекомендуемый индекс, так как просадка выполнения произошла из-за железа или стороннего процесса.
Важно помнить, что очень много индексов тоже плохо, а автоматизация этого процесса может сделать ситуацию гораздо хуже.