As of MySQL 5.7.3, the Performance Schema maintains tables for collecting current and recent transaction events, and aggregates that information in summary tables. Section 23.9.7, “Performance Schema Transaction Tables” describes the events on which transaction summaries are based. See that discussion for information about the content of transaction events, the current and recent transaction event tables, and how to control transaction event collection, which is disabled by default.
Each transaction summary table has one or more grouping
columns to indicate how the table aggregates events. Event
names refer to names of event instruments in the
EVENT_NAMEcolumns. Each row summarizes events for a given account and event name.
EVENT_NAMEcolumns. Each row summarizes events for a given host and event name.
EVENT_NAMEcolumns. Each row summarizes events for a given thread and event name.
EVENT_NAMEcolumns. Each row summarizes events for a given user and event name.
EVENT_NAMEcolumn. Each row summarizes events for a given event name.
Each transaction summary table has these summary columns containing aggregated values:
These columns are analogous to the columns of the same names in the event wait summary tables (see Section 18.104.22.168, “Event Wait Summary Tables”), except that the transaction summary tables aggregate events from
events_waits_current. These columns summarize read-write and read-only transactions.
These are similar to the
columns, but summarize read-write transactions only.
These are similar to the
columns, but summarize read-only transactions only.
Example transaction event summary information:
SELECT * FROM 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
TRUNCATE TABLE is permitted for
transaction summary tables. It resets the summary columns to
zero rather than removing rows.
Transaction events are collected regardless of isolation level, access mode, or autocommit mode.
Read-write transactions are generally more resource intensive than read-only transactions, therefore transaction summary tables include separate aggregate columns for read-write and read-only transactions.
Resource requirements may also vary with transaction isolation level. However, presuming that only one isolation level would be used per server, aggregation by isolation level is not provided.