Spec-Zone.ru › MySQL 9.2

29.12.20.5 Таблицы сводки транзакций

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

Пример сводной информации о событиях транзакций:

mysql> SELECT *
       FROM performance_schema.events_transactions_summary_global_by_event_name
       LIMIT 1\G
*************************** 1. row ***************************
          EVENT_NAME: transaction
          COUNT_STAR: 5
      SUM_TIMER_WAIT: 19550092000
      MIN_TIMER_WAIT: 2954148000
      AVG_TIMER_WAIT: 3910018000
      MAX_TIMER_WAIT: 5486275000
    COUNT_READ_WRITE: 5
SUM_TIMER_READ_WRITE: 19550092000
MIN_TIMER_READ_WRITE: 2954148000
AVG_TIMER_READ_WRITE: 3910018000
MAX_TIMER_READ_WRITE: 5486275000
     COUNT_READ_ONLY: 0
 SUM_TIMER_READ_ONLY: 0
 MIN_TIMER_READ_ONLY: 0
 AVG_TIMER_READ_ONLY: 0
 MAX_TIMER_READ_ONLY: 0

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

  • events_transactions_summary_by_account_by_event_name имеет столбцы USER, HOST и EVENT_NAME. Каждая строка суммирует события для заданного аккаунта (комбинация пользователя и хоста) и имени события.

  • events_transactions_summary_by_host_by_event_name имеет столбцы HOST и EVENT_NAME. Каждая строка суммирует события для заданного хоста и имени события.

  • events_transactions_summary_by_thread_by_event_name имеет столбцы THREAD_ID и EVENT_NAME. Каждая строка суммирует события для заданного потока и имени события.

  • events_transactions_summary_by_user_by_event_name имеет столбцы USER и EVENT_NAME. Каждая строка суммирует события для заданного пользователя и имени события.

  • events_transactions_summary_global_by_event_name имеет столбец EVENT_NAME. Каждая строка суммирует события для заданного имени события.

Каждая таблица сводки транзакций имеет эти столбцы сводки, содержащие агрегированные значения:

  • COUNT_STAR, SUM_TIMER_WAIT, MIN_TIMER_WAIT, AVG_TIMER_WAIT, MAX_TIMER_WAIT

    Эти столбцы аналогичны столбцам с теми же именами в таблицах сводки событий ожидания (см. Раздел 29.12.20.1, «Таблицы сводки событий ожидания»), за исключением того, что таблицы сводки транзакций агрегируют события из events_transactions_current вместо events_waits_current. Эти столбцы сводят чтение-запись и чтение-только транзакции.

  • COUNT_READ_WRITE, SUM_TIMER_READ_WRITE, MIN_TIMER_READ_WRITE, AVG_TIMER_READ_WRITE, MAX_TIMER_READ_WRITE

    Эти аналогичны столбцам COUNT_STAR и xxx_TIMER_WAIT, но суммируют только транзакции чтение-запись. Режим доступа к транзакции определяет, работают ли транзакции в режиме чтение/запись или чтение-только.

  • COUNT_READ_ONLY, SUM_TIMER_READ_ONLY, MIN_TIMER_READ_ONLY, AVG_TIMER_READ_ONLY, MAX_TIMER_READ_ONLY

    Эти аналогичны столбцам COUNT_STAR и xxx_TIMER_WAIT, но суммируют только транзакции чтение-только. Режим доступа к транзакции определяет, работают ли транзакции в режиме чтение/запись или чтение-только.

В таблицах сводки транзакций есть такие индексы:

  • events_transactions_summary_by_account_by_event_name:

    • Первичный ключ по (USER, HOST, EVENT_NAME)

  • events_transactions_summary_by_host_by_event_name:

    • Первичный ключ по (HOST, EVENT_NAME)

  • events_transactions_summary_by_thread_by_event_name:

    • Первичный ключ по (THREAD_ID, EVENT_NAME)

  • events_transactions_summary_by_user_by_event_name:

    • Первичный ключ по (USER, EVENT_NAME)

  • events_transactions_summary_global_by_event_name:

    • Первичный ключ по (EVENT_NAME)

TRUNCATE TABLE разрешен для таблиц сводки транзакций. Он имеет такие эффекты:

  • Для сводных таблиц, не агрегированных по аккаунту, хосту или пользователю, усечение обнуляет столбцы сводки, а не удаляет строки.

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

Кроме того, каждая таблица сводки транзакций, которая агрегируется по аккаунту, хосту, пользователю или потоку, неявно усекается при усечении таблицы подключений, от которой она зависит, или усечении events_transactions_summary_global_by_event_name. Подробности см. в Разделе 29.12.8, «Таблицы подключений схемы производительности».

Правила агрегации транзакций

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

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

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

Требования к ресурсам также могут меняться в зависимости от уровня изоляции транзакций. Однако, предполагая, что на сервере будет использоваться только один уровень изоляции, агрегация по уровню изоляции не предоставляется.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-9.2-en/performance-schema-transaction-summary-tables.html

Spec-Zone.ru

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