Spec-Zone.ru › MySQL 5.7

14.8.11 Настройка статистики оптимизатора для InnoDB

  • 14.8.11.1 Настройка параметров постоянной статистики оптимизатора
  • 14.8.11.2 Настройка параметров непостоянной статистики оптимизатора
  • 14.8.11.3 Оценка сложности ANALYZE TABLE для таблиц InnoDB

В этом разделе описано, как настроить постоянную и непостоянную статистику оптимизатора для таблиц InnoDB.

Постоянная статистика оптимизатора сохраняется после перезагрузки сервера, что позволяет повысить стабильность и согласованность производительности запросов. Постоянная статистика оптимизатора также предоставляет контроль и гибкость с этими дополнительными преимуществами:

  • Можно использовать параметр конфигурации innodb_stats_auto_recalc, чтобы управлять автоматическим обновлением статистики после существенных изменений в таблице.

  • Можно использовать предложения STATS_PERSISTENT, STATS_AUTO_RECALC и STATS_SAMPLE_PAGES с операторами CREATE TABLE и ALTER TABLE для настройки статистики оптимизатора для отдельных таблиц.

  • Можно запросить данные статистики оптимизатора в таблицах mysql.innodb_table_stats и mysql.innodb_index_stats.

  • Можно просмотреть столбец last_update в таблицах mysql.innodb_table_stats и mysql.innodb_index_stats, чтобы увидеть, когда статистика была обновлена в последний раз.

  • Можно вручную изменить таблицы mysql.innodb_table_stats и mysql.innodb_index_stats, чтобы принудительно задать определённый план оптимизации запросов или проверить альтернативные планы без изменения базы данных.

Функция постоянной статистики оптимизатора включена по умолчанию (innodb_stats_persistent=ON).

Непостоянная статистика оптимизатора очищается при каждой перезагрузке сервера и после некоторых других операций, а затем пересчитывается при следующем обращении к таблице. В результате при пересчёте статистики могут быть получены разные оценки, что приведёт к выбору различных планов выполнения и вариациям в производительности запросов.

В этом разделе также содержится информация об оценке сложности оператора ANALYZE TABLE, что может быть полезно при попытке сбалансировать точность статистики и время выполнения оператора ANALYZE TABLE.

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

Spec-Zone.ru

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