文档主页
MySQL 8.4 参考手册
相关文档 下载本手册
PDF (US Ltr) - 39.9Mb
PDF (A4) - 40.0Mb
手册页 (TGZ) - 258.5Kb
手册页 (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 参考手册  /  ...  /  Performance Schema 状态变量表

29.12.15 Performance Schema 状态变量表

MySQL 服务器维护许多状态变量,它们提供有关其运行的信息(请参见 第 7.1.10 节,“服务器状态变量”)。状态变量信息在以下 Performance Schema 表中提供:

  • global_status: 全局状态变量。仅希望获取全局值的应用程序应使用此表。

  • session_status: 当前会话的状态变量。希望获取其自身会话的所有状态变量值的应用程序应使用此表。它包含其会话的会话变量,以及没有会话对应项的全局变量的值。

  • status_by_thread: 每个活动会话的会话状态变量。希望了解特定会话的会话变量值的应用程序应使用此表。它仅包含会话变量,通过线程 ID 识别。

还有一些摘要表,它们按帐户、主机名和用户名汇总提供状态变量信息。请参见 第 29.12.20.12 节,“状态变量摘要表”

会话变量表(session_statusstatus_by_thread)仅包含活动会话的信息,不包含已终止的会话的信息。

Performance Schema 仅为 threads 表中 INSTRUMENTED 值为 YES 的线程收集全局状态变量的统计信息。无论 INSTRUMENTED 的值是什么,始终都会收集会话状态变量的统计信息。

Performance Schema 不会在状态变量表中收集 Com_xxx 状态变量的统计信息。要获取全局和每个会话的语句执行次数,请分别使用 events_statements_summary_global_by_event_nameevents_statements_summary_by_thread_by_event_name 表。例如:

SELECT EVENT_NAME, COUNT_STAR
FROM performance_schema.events_statements_summary_global_by_event_name
WHERE EVENT_NAME LIKE 'statement/sql/%';

global_statussession_status 表包含以下列:

  • VARIABLE_NAME

    状态变量名称。

  • VARIABLE_VALUE

    状态变量值。对于 global_status,此列包含全局值。对于 session_status,此列包含当前会话的变量值。

global_statussession_status 表包含以下索引:

  • 对 (VARIABLE_NAME) 的主键

status_by_thread 表包含每个活动线程的状态。它包含以下列:

  • THREAD_ID

    定义状态变量的会话的线程标识符。

  • VARIABLE_NAME

    状态变量名称。

  • VARIABLE_VALUE

    THREAD_ID 列命名的会话的会话变量值。

status_by_thread 包含以下索引

  • 主键为 (THREAD_ID, VARIABLE_NAME)

status_by_thread 仅包含关于前台线程的状态变量信息。如果 performance_schema_max_thread_instances 系统变量未自动缩放(以值为 -1 表示),并且允许的最大已检测线程对象数不大于后台线程数,则该表为空。

Performance Schema 支持以下状态变量表的 TRUNCATE TABLE 操作

FLUSH STATUS 将所有活动会话的会话状态添加到全局状态变量,重置所有活动会话的状态,并重置从断开连接的会话中聚合的账户、主机和用户状态值。