- Есть ли разница как правильно создавать индексы?
Вместе
Или правильно по отдельности?
- Есть уже созданные индексы (давно создавал), но они не отображаются в модальном окне с созданием индексов. Возможно это баг.
Индексы на полях phone, name_surname
- Можно ли и нужно ли добавлять индексы на pivot таблицы, которые создаются автоматически?
Композитные индексы есть смысл создавать если этим поля участвуют в условиях выборки вместе (WHERE). Будут работать как индексы, созданные на отдельные поля так и композитные.
Для первичного ключа (у нас по умолчанию это поле id) индексы создаются самой БД автоматически. Для типа bool практически никогда не имеет смысла создавать индекс.
Пока для pivot не стоит создавать индекс, нужно сначала проверить есть ли последовательное сканирование таблицы или нет. Возможно нам нужно централизовано добавить правило для автоматического создания индекса на pivot таблицах.
Пожалуйста помните, что наличие индексов замедляет вставку записей. Создавайте только если это действительно нужно. Проверить можно с помощью Explain по запросам, которые можно скопировать например из лога приложения.
По поводу старых индексов, которые потенциально не отображаются - @anthony.appmaster нужно проверить.
1 Like