Spec-Zone.ru › MySQL 9.2

28.4.8 Таблицы INFORMATION_SCHEMA INNODB_CMP_PER_INDEX и INNODB_CMP_PER_INDEX_RESET

Таблицы INNODB_CMP_PER_INDEX и INNODB_CMP_PER_INDEX_RESET предоставляют информацию о статусе операций, связанных с таблицами и индексами InnoDB, с отдельной статистикой для каждой комбинации базы данных, таблицы и индекса, помогая оценить производительность и эффективность сжатия для конкретных таблиц.

Для сжатой таблицы InnoDB сжимаются как данные таблицы, так и все индексы. В данном контексте данные таблицы рассматриваются как ещё один индекс, содержащий все столбцы: .

В таблицах INNODB_CMP_PER_INDEX и INNODB_CMP_PER_INDEX_RESET присутствуют следующие столбцы:

  • DATABASE_NAME

    Схема (база данных), содержащая соответствующую таблицу.

  • TABLE_NAME

    Таблица, для которой отслеживается статистика сжатия.

  • INDEX_NAME

    Индекс, для которого отслеживается статистика сжатия.

  • COMPRESS_OPS

    Количество попыток операций сжатия. сжимаются всякий раз, когда создаётся пустая страница или заканчивается место для нескомпрессированного журнала изменений.

  • COMPRESS_OPS_OK

    Количество успешных операций сжатия. Вычтите значение COMPRESS_OPS, чтобы получить количество неуспешных операций сжатия. Разделите на значение COMPRESS_OPS, чтобы получить процент неудачных операций сжатия.

  • COMPRESS_TIME

    Общее время в секундах, затраченное на сжатие данных в этом индексе.

  • UNCOMPRESS_OPS

    Количество операций распаковки. Сжатые InnoDB страницы распаковываются, когда происходит сжатие, или в первый раз, когда к сжатой странице осуществляется доступ в и нескомпрессированная страница не существует.

  • UNCOMPRESS_TIME

    Общее время в секундах, затраченное на распаковку данных в этом индексе.

Пример

mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_CMP_PER_INDEX\G
*************************** 1. row ***************************
  database_name: employees
     table_name: salaries
     index_name: PRIMARY
   compress_ops: 0
compress_ops_ok: 0
  compress_time: 0
 uncompress_ops: 23451
uncompress_time: 4
*************************** 2. row ***************************
  database_name: employees
     table_name: salaries
     index_name: emp_no
   compress_ops: 0
compress_ops_ok: 0
  compress_time: 0
 uncompress_ops: 1597
uncompress_time: 0

Примечания

  • Используйте эти таблицы для измерения эффективности сжатия InnoDB таблицы для конкретных таблиц, индексов или обоих вместе.

  • Для запроса этих таблиц необходимо иметь привилегию PROCESS.

  • Используйте таблицу INFORMATION_SCHEMA COLUMNS или оператор SHOW COLUMNS для просмотра дополнительной информации о столбцах этих таблиц, включая типы данных и значения по умолчанию.

  • Поскольку сбор отдельных измерений для каждого индекса создает значительную нагрузку на производительность, статистика для INNODB_CMP_PER_INDEX и INNODB_CMP_PER_INDEX_RESET по умолчанию не собирается. Необходимо включить системную переменную innodb_cmp_per_index_enabled перед выполнением операций на сжатых таблицах, которые требуется отслеживать.

  • Сведения об использовании см. в Разделе 17.9.1.4, «Отслеживание сжатия таблиц InnoDB во время выполнения» и Разделе 17.15.1.3, «Использование таблиц схемы данных сжатия». Дополнительную информацию о сжатии таблиц InnoDB см. в Разделе 17.9, «Сжатие таблиц и страниц InnoDB».

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-9.2-en/information-schema-innodb-cmp-per-index-table.html

Spec-Zone.ru

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