Spec-Zone.ru › MySQL 9.2

29.4.8 Примеры конфигураций потребителей

Настройки потребителей в таблице setup_consumers образуют иерархию от более высоких уровней к более низким. Следующее обсуждение описывает, как работают потребители, показывая конкретные конфигурации и их влияние по мере поэтапного включения настроек потребителей сверху вниз. Значения потребителей, показанные здесь, являются представительными. Общие принципы, описанные здесь, применяются к другим значениям потребителей, которые могут быть доступны.

Описания конфигураций следуют в порядке возрастания функциональности и накладных расходов. Если вам не нужна информация, предоставляемая включением настроек более низкого уровня, отключите их, чтобы Performance Schema выполнял меньше кода от вашего имени и было меньше информации для анализа.

Таблица setup_consumers содержит следующую иерархию значений:

global_instrumentation
 thread_instrumentation
   events_waits_current
     events_waits_history
     events_waits_history_long
   events_stages_current
     events_stages_history
     events_stages_history_long
   events_statements_current
     events_statements_history
     events_statements_history_long
   events_transactions_current
     events_transactions_history
     events_transactions_history_long
 statements_digest
Примечание

В иерархии потребителей потребители для ожиданий, этапов, операторов и транзакций находятся на одном уровне. Это отличается от иерархии вложенности событий, для которой события ожидания вложены в события этапов, которые вложены в события операторов, которые вложены в события транзакций.

Если заданная настройка потребителя NO, Performance Schema отключает инструментацию, связанную с потребителем, и игнорирует все настройки более низкого уровня. Если заданная настройка YES, Performance Schema включает связанную с ней инструментацию и проверяет настройки следующего более низкого уровня. Для описания правил для каждого потребителя см. Раздел 29.4.7, «Предварительное фильтрование по потребителю».

Например, если включено global_instrumentation, то проверено thread_instrumentation. Если включено thread_instrumentation, то проверяются потребители events_xxx_current. Если из этих events_waits_current включено, то проверяются events_waits_history и events_waits_history_long.

Каждое из следующих описаний конфигурации указывает, какие элементы настройки проверяет Performance Schema и какие выходные таблицы он поддерживает (то есть, для каких таблиц он собирает информацию).

  • Без инструментирования

  • Только глобальная инструментировка

  • Глобальная и потоковая инструментировка только

  • Глобальная, потоковая и текущая-событие инструментировка

  • Глобальная, потоковая, текущая-событие и история-событий инструментировка

Без инструментирования

Состояние конфигурации сервера:

mysql> SELECT * FROM performance_schema.setup_consumers;
+---------------------------+---------+
| NAME                      | ENABLED |
+---------------------------+---------+
| global_instrumentation    | NO      |
...
+---------------------------+---------+

В этой конфигурации ничего не инструментировано.

Проверенные элементы настройки:

  • Таблица setup_consumers, потребитель global_instrumentation

Поддерживаемые выходные таблицы:

  • Нет

Только глобальная инструментировка

Состояние конфигурации сервера:

mysql> SELECT * FROM performance_schema.setup_consumers;
+---------------------------+---------+
| NAME                      | ENABLED |
+---------------------------+---------+
| global_instrumentation    | YES     |
| thread_instrumentation    | NO      |
...
+---------------------------+---------+

В этой конфигурации инструментирование поддерживается только для глобальных состояний. Инструментирование на уровне потоков отключено.

Дополнительные элементы настройки, проверенные относительно предыдущей конфигурации:

  • Таблица setup_consumers, потребитель thread_instrumentation

  • Таблица setup_instruments

  • Таблица setup_objects

Дополнительные выходные таблицы, поддерживаемые относительно предыдущей конфигурации:

  • mutex_instances

  • rwlock_instances

  • cond_instances

  • file_instances

  • users

  • hosts

  • accounts

  • socket_summary_by_event_name

  • file_summary_by_instance

  • file_summary_by_event_name

  • objects_summary_global_by_type

  • memory_summary_global_by_event_name

  • table_lock_waits_summary_by_table

  • table_io_waits_summary_by_index_usage

  • table_io_waits_summary_by_table

  • events_waits_summary_by_instance

  • events_waits_summary_global_by_event_name

  • events_stages_summary_global_by_event_name

  • events_statements_summary_global_by_event_name

  • events_transactions_summary_global_by_event_name

Глобальная и потоковая инструментировка только

Состояние конфигурации сервера:

mysql> SELECT * FROM performance_schema.setup_consumers;
+----------------------------------+---------+
| NAME                             | ENABLED |
+----------------------------------+---------+
| global_instrumentation           | YES     |
| thread_instrumentation           | YES     |
| events_waits_current             | NO      |
...
| events_stages_current            | NO      |
...
| events_statements_current        | NO      |
...
| events_transactions_current      | NO      |
...
+----------------------------------+---------+

В этой конфигурации инструментирование поддерживается глобально и на уровне потоков. Индивидуальные события не собираются в таблицах текущих событий или истории событий.

Дополнительные элементы настройки, проверенные относительно предыдущей конфигурации:

  • Таблица setup_consumers, потребители events_xxx_current, где xxx это waits, stages, statements, transactions

  • Таблица setup_actors

  • Столбец threads.instrumented

Дополнительные выходные таблицы, поддерживаемые относительно предыдущей конфигурации:

  • events_xxx_summary_by_yyy_by_event_name, где xxx это waits, stages, statements, transactions; и yyy это thread, user, host, account

END_OF_DOCUMENT_MARKER

Инструментирование глобального, потокового и текущих событий

Состояние конфигурации сервера:

mysql> SELECT * FROM performance_schema.setup_consumers;
+----------------------------------+---------+
| NAME                             | ENABLED |
+----------------------------------+---------+
| global_instrumentation           | YES     |
| thread_instrumentation           | YES     |
| events_waits_current             | YES     |
| events_waits_history             | NO      |
| events_waits_history_long        | NO      |
| events_stages_current            | YES     |
| events_stages_history            | NO      |
| events_stages_history_long       | NO      |
| events_statements_current        | YES     |
| events_statements_history        | NO      |
| events_statements_history_long   | NO      |
| events_transactions_current      | YES     |
| events_transactions_history      | NO      |
| events_transactions_history_long | NO      |
...
+----------------------------------+---------+

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

Дополнительные элементы настройки, проверенные по отношению к предыдущей конфигурации:

  • Потребители events_xxx_history, где xxx является waits, stages, statements, transactions

  • Потребители events_xxx_history_long, где xxx является waits, stages, statements, transactions

Дополнительные таблицы вывода, поддерживаемые по отношению к предыдущей конфигурации:

  • events_xxx_current, где xxx является waits, stages, statements, transactions

Инструментирование глобальных, потоковых, текущих событий и истории событий

Предыдущая конфигурация не собирает историю событий, поскольку потребители events_xxx_history и events_xxx_history_long отключены. Эти потребители могут быть включены по отдельности или вместе для сбора истории событий по потокам, глобально или по обоим признакам.

Эта конфигурация собирает историю событий по потокам, но не глобально:

mysql> SELECT * FROM performance_schema.setup_consumers;
+----------------------------------+---------+
| NAME                             | ENABLED |
+----------------------------------+---------+
| global_instrumentation           | YES     |
| thread_instrumentation           | YES     |
| events_waits_current             | YES     |
| events_waits_history             | YES     |
| events_waits_history_long        | NO      |
| events_stages_current            | YES     |
| events_stages_history            | YES     |
| events_stages_history_long       | NO      |
| events_statements_current        | YES     |
| events_statements_history        | YES     |
| events_statements_history_long   | NO      |
| events_transactions_current      | YES     |
| events_transactions_history      | YES     |
| events_transactions_history_long | NO      |
...
+----------------------------------+---------+

Таблицы истории событий, поддерживаемые для этой конфигурации:

  • events_xxx_history, где xxx является waits, stages, statements, transactions

Эта конфигурация собирает историю событий глобально, но не по потокам:

mysql> SELECT * FROM performance_schema.setup_consumers;
+----------------------------------+---------+
| NAME                             | ENABLED |
+----------------------------------+---------+
| global_instrumentation           | YES     |
| thread_instrumentation           | YES     |
| events_waits_current             | YES     |
| events_waits_history             | NO      |
| events_waits_history_long        | YES     |
| events_stages_current            | YES     |
| events_stages_history            | NO      |
| events_stages_history_long       | YES     |
| events_statements_current        | YES     |
| events_statements_history        | NO      |
| events_statements_history_long   | YES     |
| events_transactions_current      | YES     |
| events_transactions_history      | NO      |
| events_transactions_history_long | YES     |
...
+----------------------------------+---------+

Таблицы истории событий, поддерживаемые для этой конфигурации:

  • events_xxx_history_long, где xxx является waits, stages, statements, transactions

Эта конфигурация собирает историю событий по потокам и глобально:

mysql> SELECT * FROM performance_schema.setup_consumers;
+----------------------------------+---------+
| NAME                             | ENABLED |
+----------------------------------+---------+
| global_instrumentation           | YES     |
| thread_instrumentation           | YES     |
| events_waits_current             | YES     |
| events_waits_history             | YES     |
| events_waits_history_long        | YES     |
| events_stages_current            | YES     |
| events_stages_history            | YES     |
| events_stages_history_long       | YES     |
| events_statements_current        | YES     |
| events_statements_history        | YES     |
| events_statements_history_long   | YES     |
| events_transactions_current      | YES     |
| events_transactions_history      | YES     |
| events_transactions_history_long | YES     |
...
+----------------------------------+---------+

Таблицы истории событий, поддерживаемые для этой конфигурации:

  • events_xxx_history, где xxx является waits, stages, statements, transactions

  • events_xxx_history_long, где xxx является waits, stages, statements, transactions

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/performance-schema-consumer-configurations.html

Spec-Zone.ru

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