Documentation Home
MySQL 8.4 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 39.8Mb
PDF (A4) - 39.9Mb
Man Pages (TGZ) - 257.9Kb
Man Pages (Zip) - 364.9Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


29.12.20.4 语句摘要表

性能_schema维护语句事件摘要表,包含关于最小、最大和平均语句延迟的信息(见第29.12.20.3节,“语句摘要表”)。这些表允许对系统性能进行高级评估。为了允许在更细化的级别评估系统性能,性能_schema还收集语句延迟的histogram数据。这些histogram提供了额外的延迟分布信息。

第29.12.6节,“性能_schema语句事件表” 描述了语句摘要的基础事件。查看该讨论以获取关于语句事件的内容、当前和历史语句事件表,以及如何控制语句事件收集,这部分默认禁用。

示例语句histogram信息:

mysql> SELECT *
       FROM performance_schema.events_statements_histogram_by_digest
       WHERE SCHEMA_NAME = 'mydb' AND DIGEST = 'bb3f69453119b2d7b3ae40673a9d4c7c'
       AND COUNT_BUCKET > 0 ORDER BY BUCKET_NUMBER\G
*************************** 1. row ***************************
           SCHEMA_NAME: mydb
                DIGEST: bb3f69453119b2d7b3ae40673a9d4c7c
         BUCKET_NUMBER: 42
      BUCKET_TIMER_LOW: 66069344
     BUCKET_TIMER_HIGH: 69183097
          COUNT_BUCKET: 1
COUNT_BUCKET_AND_LOWER: 1
       BUCKET_QUANTILE: 0.058824
*************************** 2. row ***************************
           SCHEMA_NAME: mydb
                DIGEST: bb3f69453119b2d7b3ae40673a9d4c7c
         BUCKET_NUMBER: 43
      BUCKET_TIMER_LOW: 69183097
     BUCKET_TIMER_HIGH: 72443596
          COUNT_BUCKET: 1
COUNT_BUCKET_AND_LOWER: 2
       BUCKET_QUANTILE: 0.117647
*************************** 3. row ***************************
           SCHEMA_NAME: mydb
                DIGEST: bb3f69453119b2d7b3ae40673a9d4c7c
         BUCKET_NUMBER: 44
      BUCKET_TIMER_LOW: 72443596
     BUCKET_TIMER_HIGH: 75857757
          COUNT_BUCKET: 2
COUNT_BUCKET_AND_LOWER: 4
       BUCKET_QUANTILE: 0.235294
*************************** 4. row ***************************
           SCHEMA_NAME: mydb
                DIGEST: bb3f69453119b2d7b3ae40673a9d4c7c
         BUCKET_NUMBER: 45
      BUCKET_TIMER_LOW: 75857757
     BUCKET_TIMER_HIGH: 79432823
          COUNT_BUCKET: 6
COUNT_BUCKET_AND_LOWER: 10
       BUCKET_QUANTILE: 0.625000
...

例如,在行3中,这些值表明23.52%的查询在75.86微秒以下运行:

BUCKET_TIMER_HIGH: 75857757
  BUCKET_QUANTILE: 0.235294

在行4中,这些值表明62.50%的查询在79.44微秒以下运行:

BUCKET_TIMER_HIGH: 79432823
  BUCKET_QUANTILE: 0.625000

每个语句histogram摘要表都有一个或多个分组列,以指示如何将事件聚合:

一个histogram由N个bucket组成,每个行表示一个bucket,BUCKET_NUMBER列表示bucket号。bucket号从0开始。

每个语句histogram摘要表都有这些汇总列,包含聚合值:

  • BUCKET_TIMER_LOWBUCKET_TIMER_HIGH

    一个桶计数语句的延迟,单位为.picoseconds,测量范围在BUCKET_TIMER_LOWBUCKET_TIMER_HIGH之间:

    • 第一个桶(BUCKET_NUMBER = 0)的BUCKET_TIMER_LOW值为0。

    • k个桶的BUCKET_TIMER_LOW值等于前一个桶(BUCKET_NUMBER = k-1)的BUCKET_TIMER_HIGH值。

    • 最后一个桶是对语句延迟超过前面桶的histogram的catchall。

  • COUNT_BUCKET

    BUCKET_TIMER_LOWBUCKET_TIMER_HIGH之间测量的语句数量。

  • COUNT_BUCKET_AND_LOWER

    在0到BUCKET_TIMER_HIGH之间测量的语句数量。

  • BUCKET_QUANTILE

    语句落入这个或更低的桶的比例。这比例对应于定义的COUNT_BUCKET_AND_LOWER / SUM(COUNT_BUCKET),并作为一个便捷列显示。

语句histogram总结表有这些索引:

TRUNCATE TABLE允许对语句histogram总结表进行截断。截断将COUNT_BUCKETCOUNT_BUCKET_AND_LOWER列设置为0。

此外,截断events_statements_summary_by_digest隐式截断events_statements_histogram_by_digest,截断events_statements_summary_global_by_event_name隐式截断events_statements_histogram_global