MySQL服务器维护着许多指示其配置方式的系统变量(请参见“服务器系统变量”)。这些性能模式表中提供了系统变量信息:
global_variables
:全局系统变量。仅需要全局值的应用程序应使用此表。session_variables
:当前会话的系统变量。希望为其会话使用所有系统变量值的应用程序应使用此表。它包括其会话的会话变量,以及没有会话对应项的全局变量的值。variables_by_thread
:每个活动会话的会话系统变量。想要了解特定会话的会话变量值的应用程序应使用此表。它仅包含会话变量,由线程ID标识。persisted_variables
:为mysqld-auto.cnf
文件提供一个SQL接口,用于存储持久的全局系统变量设置。请参见“性能模式persisted_variables表”。variables_info
:显示每个系统变量的最新设置来源和值范围。请参见“性能模式variables_info表”。
会话变量表(session_variables
,variables_by_thread
)包含信息仅针对活动会话,没有终止会话。
TRUNCATE TABLE
Performance Schema系统变量表不支持。
在global_variables
与session_variables
表有这些列:
VARIABLE_NAME
系统变量名称。
VARIABLE_VALUE
系统变量值。对于
global_variables
,此列包含全局值。对于session_variables
,此列包含当前会话有效的变量值。
在global_variables
与session_variables
表有这些索引:
- (
VARIABLE_NAME
)上的主键
该variables_by_thread
表包含以下列:
THREAD_ID
在其中定义系统变量的会话的线程标识符。
VARIABLE_NAME
系统变量名称。
VARIABLE_VALUE
THREAD_ID
列命名的会话的会话变量值。
该variables_by_thread
表具有以下索引:
- (
THREAD_ID
,VARIABLE_NAME
)上的主键
该variables_by_thread
表仅包含有关前台线程的系统变量信息。如果不是所有线程都由性能架构进行检测,则该表将丢失一些行。在这种情况下,Performance_schema_thread_instances_lost
状态变量将大于零。