文档首页
MySQL 8.4 参考手册
相关文档 下载本手册

29.12.20.11 错误汇总表

性能模式维护汇总表,用于聚合有关服务器错误(和警告)的统计信息。有关服务器错误的列表,请参阅 服务器错误消息参考

错误信息的收集由 error 检测器控制,该检测器默认启用。不收集计时信息。

每个错误汇总表都有三个标识错误的列

  • ERROR_NUMBER 是数字错误值。该值是唯一的。

  • ERROR_NAME 是与 ERROR_NUMBER 值相对应的符号错误名称。该值是唯一的。

  • SQLSTATE 是与 ERROR_NUMBER 值相对应的 SQLSTATE 值。该值不一定唯一。

例如,如果 ERROR_NUMBER 为 1050,则 ERROR_NAMEER_TABLE_EXISTS_ERRORSQLSTATE42S01

错误事件汇总信息示例

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

每个错误汇总表都有一个或多个分组列,用于指示表如何聚合错误

每个错误汇总表都包含以下汇总列,其中包含聚合值

  • SUM_ERROR_RAISED

    此列汇总错误发生的次数。

  • SUM_ERROR_HANDLED

    此列汇总 SQL 异常处理程序处理错误的次数。

  • FIRST_SEENLAST_SEEN

    时间戳,指示第一次和最近一次看到错误的时间。

每个错误汇总表中的 NULL 行用于聚合超出检测错误范围的所有错误的统计信息。例如,如果 MySQL 服务器错误位于 MN 的范围内,并且引发了不在该范围内的编号为 Q 的错误,则该错误将聚合在 NULL 行中。NULL 行是 ERROR_NUMBER=0ERROR_NAME=NULLSQLSTATE=NULL 的行。

错误汇总表具有以下索引

允许对错误汇总表使用 TRUNCATE TABLE 语句。它具有以下效果:

  • 对于未按帐户、主机或用户聚合的汇总表,截断操作会将汇总列重置为零或 NULL,而不是删除行。

  • 对于按帐户、主机或用户聚合的汇总表,截断操作会删除没有连接的帐户、主机或用户的行,并为剩余的行将汇总列重置为零或 NULL

此外,每个按帐户、主机、用户或线程聚合的错误汇总表都会通过截断其依赖的连接表或截断 events_errors_summary_global_by_error 来隐式截断。有关详细信息,请参阅第 29.12.8 节“性能模式连接表”