Spec-Zone.ru › MySQL 5.7

8.5.6 Оптимизация запросов InnoDB

Для настройки запросов к таблицам InnoDB создайте соответствующий набор индексов для каждой таблицы. Подробности см. в разделе 8.3.1, «Как MySQL использует индексы». Следуйте этим рекомендациям для InnoDB индексов:

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

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

  • Не создавайте отдельный индекс для каждого столбца, поскольку каждый запрос может использовать только один индекс. Индексы на редко используемых столбцах или столбцах с небольшим количеством различных значений могут не быть полезны для каких-либо запросов. Если у вас много запросов к одной и той же таблице, тестируя различные комбинации столбцов, старайтесь создать небольшое количество индексов, а не большое количество одностолбцовых индексов. Если индекс содержит все столбцы, необходимые для набора результатов (известный как составной индекс), запрос может вообще избежать чтения данных из таблицы.

  • Если индексируемый столбец не может содержать каких-либо значений NULL, объявите его как NOT NULL при создании таблицы. Оптимизатор может лучше определить, какой индекс наиболее эффективен для запроса, когда он знает, содержит ли каждый столбец значения NULL.

  • Вы можете оптимизировать транзакции отдельных запросов для таблиц InnoDB, используя метод, описанный в разделе 8.5.3, «Оптимизация транзакций только для чтения InnoDB».

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/optimizing-innodb-queries.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API