MySQL 8.4 Reference Manual Including MySQL NDB Cluster 8.4
The Performance Schema maintains summary tables for aggregating statistical information about server errors (and warnings). For a list of server errors, see Server Error Message Reference.
Collection of error information is controlled by the
error
instrument, which is enabled by
default. Timing information is not collected.
Each error summary table has three columns that identify the error:
ERROR_NUMBER
is the numeric error
value. The value is unique.
ERROR_NAME
is the symbolic error name
corresponding to the ERROR_NUMBER
value. The value is unique.
SQLSTATE
is the SQLSTATE value
corresponding to the ERROR_NUMBER
value. The value is not necessarily unique.
For example, if ERROR_NUMBER
is 1050,
ERROR_NAME
is
ER_TABLE_EXISTS_ERROR
and
SQLSTATE
is 42S01
.
Example error event summary information:
mysql>SELECT *
FROM performance_schema.events_errors_summary_global_by_error
WHERE SUM_ERROR_RAISED <> 0\G
*************************** 1. row *************************** ERROR_NUMBER: 1064 ERROR_NAME: ER_PARSE_ERROR SQL_STATE: 42000 SUM_ERROR_RAISED: 1 SUM_ERROR_HANDLED: 0 FIRST_SEEN: 2016-06-28 07:34:02 LAST_SEEN: 2016-06-28 07:34:02 *************************** 2. row *************************** ERROR_NUMBER: 1146 ERROR_NAME: ER_NO_SUCH_TABLE SQL_STATE: 42S02 SUM_ERROR_RAISED: 2 SUM_ERROR_HANDLED: 0 FIRST_SEEN: 2016-06-28 07:34:05 LAST_SEEN: 2016-06-28 07:36:18 *************************** 3. row *************************** ERROR_NUMBER: 1317 ERROR_NAME: ER_QUERY_INTERRUPTED SQL_STATE: 70100 SUM_ERROR_RAISED: 1 SUM_ERROR_HANDLED: 0 FIRST_SEEN: 2016-06-28 11:01:49 LAST_SEEN: 2016-06-28 11:01:49
Each error summary table has one or more grouping columns to indicate how the table aggregates errors:
events_errors_summary_by_account_by_error
has USER
, HOST
, and
ERROR_NUMBER
columns. Each row
summarizes events for a given account (user and host
combination) and error.
events_errors_summary_by_host_by_error
has HOST
and
ERROR_NUMBER
columns. Each row
summarizes events for a given host and error.
events_errors_summary_by_thread_by_error
has THREAD_ID
and
ERROR_NUMBER
columns. Each row
summarizes events for a given thread and error.
events_errors_summary_by_user_by_error
has USER
and
ERROR_NUMBER
columns. Each row
summarizes events for a given user and error.
events_errors_summary_global_by_error
has an ERROR_NUMBER
column. Each row
summarizes events for a given error.
Each error summary table has these summary columns containing aggregated values:
SUM_ERROR_RAISED
This column aggregates the number of times the error occurred.
SUM_ERROR_HANDLED
This column aggregates the number of times the error was handled by an SQL exception handler.
FIRST_SEEN
,
LAST_SEEN
Timestamp indicating when the error was first seen and most recently seen.
A NULL
row in each error summary table is
used to aggregate statistics for all errors that lie out of
range of the instrumented errors. For example, if MySQL Server
errors lie in the range from M
to
N
and an error is raised with
number Q
not in that range, the
error is aggregated in the NULL
row. The
NULL
row is the row with
ERROR_NUMBER=0
,
ERROR_NAME=NULL
, and
SQLSTATE=NULL
.
The error summary tables have these indexes:
events_errors_summary_by_account_by_error
:
Primary key on (USER
,
HOST
,
ERROR_NUMBER
)
events_errors_summary_by_host_by_error
:
Primary key on (HOST
,
ERROR_NUMBER
)
events_errors_summary_by_thread_by_error
:
Primary key on (THREAD_ID
,
ERROR_NUMBER
)
events_errors_summary_by_user_by_error
:
Primary key on (USER
,
ERROR_NUMBER
)
events_errors_summary_global_by_error
:
Primary key on (ERROR_NUMBER
)
TRUNCATE TABLE
is permitted for
error summary tables. It has these effects:
For summary tables not aggregated by account, host, or
user, truncation resets the summary columns to zero or
NULL
rather than removing rows.
For summary tables aggregated by account, host, or user,
truncation removes rows for accounts, hosts, or users with
no connections, and resets the summary columns to zero or
NULL
for the remaining rows.
In addition, each error summary table that is aggregated by
account, host, user, or thread is implicitly truncated by
truncation of the connection table on which it depends, or
truncation of
events_errors_summary_global_by_error
.
For details, see
Section 29.12.8, “Performance Schema Connection Tables”.