Performance Schema 实现了一些系统变量,这些变量提供配置信息。
mysql> SHOW VARIABLES LIKE 'perf%';
+----------------------------------------------------------+-------+
| Variable_name | Value |
+----------------------------------------------------------+-------+
| performance_schema | ON |
| performance_schema_accounts_size | -1 |
| performance_schema_digests_size | 10000 |
| performance_schema_error_size | 5377 |
| performance_schema_events_stages_history_long_size | 10000 |
| performance_schema_events_stages_history_size | 10 |
| performance_schema_events_statements_history_long_size | 10000 |
| performance_schema_events_statements_history_size | 10 |
| performance_schema_events_transactions_history_long_size | 10000 |
| performance_schema_events_transactions_history_size | 10 |
| performance_schema_events_waits_history_long_size | 10000 |
| performance_schema_events_waits_history_size | 10 |
| performance_schema_hosts_size | -1 |
| performance_schema_max_cond_classes | 150 |
| performance_schema_max_cond_instances | -1 |
| performance_schema_max_digest_length | 1024 |
| performance_schema_max_digest_sample_age | 60 |
| performance_schema_max_file_classes | 80 |
| performance_schema_max_file_handles | 32768 |
| performance_schema_max_file_instances | -1 |
| performance_schema_max_index_stat | -1 |
| performance_schema_max_memory_classes | 470 |
| performance_schema_max_metadata_locks | -1 |
| performance_schema_max_meter_classes | 30 |
| performance_schema_max_metric_classes | 600 |
| performance_schema_max_mutex_classes | 350 |
| performance_schema_max_mutex_instances | -1 |
| performance_schema_max_prepared_statements_instances | -1 |
| performance_schema_max_program_instances | -1 |
| performance_schema_max_rwlock_classes | 100 |
| performance_schema_max_rwlock_instances | -1 |
| performance_schema_max_socket_classes | 10 |
| performance_schema_max_socket_instances | -1 |
| performance_schema_max_sql_text_length | 1024 |
| performance_schema_max_stage_classes | 175 |
| performance_schema_max_statement_classes | 220 |
| performance_schema_max_statement_stack | 10 |
| performance_schema_max_table_handles | -1 |
| performance_schema_max_table_instances | -1 |
| performance_schema_max_table_lock_stat | -1 |
| performance_schema_max_thread_classes | 100 |
| performance_schema_max_thread_instances | -1 |
| performance_schema_session_connect_attrs_size | 512 |
| performance_schema_setup_actors_size | -1 |
| performance_schema_setup_objects_size | -1 |
| performance_schema_show_processlist | OFF |
| performance_schema_users_size | -1 |
+----------------------------------------------------------+-------+
Performance Schema 系统变量可以在服务器启动时通过命令行或选项文件设置,并且许多变量可以在运行时设置。请参见第 29.13 节,“Performance Schema 选项和变量参考”。
如果 Performance Schema 的几个参数没有明确设置,那么 Performance Schema 会在服务器启动时自动确定这些参数的值。有关更多信息,请参见第 29.3 节,“Performance Schema 启动配置”。
Performance Schema 系统变量具有以下含义。
-
命令行格式 --performance-schema[={OFF|ON}]
系统变量 performance_schema
范围 全局 动态 否 SET_VAR
提示适用否 类型 布尔值 默认值 ON
此变量的值为
ON
或OFF
,用于指示是否启用 Performance Schema。默认情况下,值为ON
。在服务器启动时,您可以指定此变量,不带值或带值为ON
或 1 以启用它,或带值为OFF
或 0 以禁用它。即使 Performance Schema 已禁用,它也会继续填充
global_variables
、session_variables
、global_status
和session_status
表。这是为了使SHOW VARIABLES
和SHOW STATUS
语句的结果可以从这些表中获取。Performance Schema 还填充一些复制表,即使在禁用状态下也是如此。 performance_schema_accounts_size
命令行格式 --performance-schema-accounts-size=#
系统变量 performance_schema_accounts_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
accounts
表中的行数。如果此变量为 0,则 Performance Schema 不会在accounts
表中维护连接统计信息,也不会在status_by_account
表中维护状态变量信息。performance_schema_digests_size
命令行格式 --performance-schema-digests-size=#
系统变量 performance_schema_digests_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
events_statements_summary_by_digest
表中的最大行数。如果超过此最大值,导致无法检测摘要,则 Performance Schema 会递增Performance_schema_digest_lost
状态变量。有关语句摘要的更多信息,请参见第 29.10 节,“Performance Schema 语句摘要和采样”。
-
命令行格式 --performance-schema-error-size=#
系统变量 performance_schema_error_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 服务器错误代码数量
最小值 0
最大值 1048576
已测量的服务器错误代码的数量。默认值为实际的服务器错误代码的数量。虽然该值可以在 0 到其最大值之间设置,但其预期用途是将其设置为其默认值(以测量所有错误)或 0(以不测量任何错误)。
错误信息在摘要表中汇总;请参见 第 29.12.20.11 节,“错误摘要表”。如果发生未测量的错误,则该事件的信息将汇总到每个摘要表中的
NULL
行;也就是说,汇总到ERROR_NUMBER=0
、ERROR_NAME=NULL
和SQLSTATE=NULL
的行。 performance_schema_events_stages_history_long_size
命令行格式 --performance-schema-events-stages-history-long-size=#
系统变量 performance_schema_events_stages_history_long_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
events_stages_history_long
表中的行数。performance_schema_events_stages_history_size
命令行格式 --performance-schema-events-stages-history-size=#
系统变量 performance_schema_events_stages_history_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1024
每个线程在
events_stages_history
表中的行数。performance_schema_events_statements_history_long_size
命令行格式 --performance-schema-events-statements-history-long-size=#
系统变量 performance_schema_events_statements_history_long_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
performance_schema_events_statements_history_size
命令行格式 --performance-schema-events-statements-history-size=#
系统变量 performance_schema_events_statements_history_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1024
每个线程在
events_statements_history
表中的行数。performance_schema_events_transactions_history_long_size
命令行格式 --performance-schema-events-transactions-history-long-size=#
系统变量 performance_schema_events_transactions_history_long_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
performance_schema_events_transactions_history_size
命令行格式 --performance-schema-events-transactions-history-size=#
系统变量 performance_schema_events_transactions_history_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1024
每个线程在
events_transactions_history
表中的行数。performance_schema_events_waits_history_long_size
命令行格式 --performance-schema-events-waits-history-long-size=#
系统变量 performance_schema_events_waits_history_long_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
events_waits_history_long
表中的行数。performance_schema_events_waits_history_size
命令行格式 --performance-schema-events-waits-history-size=#
系统变量 performance_schema_events_waits_history_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1024
每个线程在
events_waits_history
表中的行数。-
命令行格式 --performance-schema-hosts-size=#
系统变量 performance_schema_hosts_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
hosts
表中的行数。如果此变量为 0,则 Performance Schema 不会在hosts
表中维护连接统计信息,也不会在status_by_host
表中维护状态变量信息。 performance_schema_max_cond_classes
命令行格式 --performance-schema-max-cond-classes=#
系统变量 performance_schema_max_cond_classes
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 150
最小值 0
最大值 1024
条件仪器的最大数量。有关如何设置和使用此变量的信息,请参见 第 29.7 节,“Performance Schema 状态监控”。
performance_schema_max_cond_instances
命令行格式 --performance-schema-max-cond-instances=#
系统变量 performance_schema_max_cond_instances
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
已测量的条件对象的数目。有关如何设置和使用此变量的信息,请参见 第 29.7 节,“Performance Schema 状态监控”。
performance_schema_max_digest_length
命令行格式 --performance-schema-max-digest-length=#
系统变量 performance_schema_max_digest_length
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 1024
最小值 0
最大值 1048576
单位 字节 每个语句在 Performance Schema 中为规范化语句摘要值计算保留的内存字节数的最大数量。此变量与
max_digest_length
相关;请参见 第 7.1.8 节,“服务器系统变量” 中对该变量的描述。有关语句摘要(包括内存使用方面的注意事项)的更多信息,请参见 第 29.10 节,“Performance Schema 语句摘要和采样”。
performance_schema_max_digest_sample_age
命令行格式 --performance-schema-max-digest-sample-age=#
系统变量 performance_schema_max_digest_sample_age
范围 全局 动态 是 SET_VAR
提示适用否 类型 整数 默认值 60
最小值 0
最大值 1048576
单位 秒 此变量会影响
events_statements_summary_by_digest
表的语句采样。当插入新的表行时,生成该行摘要值的语句将存储为与该摘要关联的当前采样语句。此后,当服务器看到其他具有相同摘要值的语句时,它将确定是否使用新的语句来替换当前采样语句(也就是说,是否重新采样)。重新采样策略基于当前采样语句和新语句的比较等待时间,以及当前采样语句的年龄(可选)。基于等待时间的重新采样:如果新语句等待时间大于当前采样语句的等待时间,则它将成为当前采样语句。
基于年龄的重新采样:如果
performance_schema_max_digest_sample_age
系统变量的值大于零,并且当前采样语句的年龄超过那么多秒,则当前语句将被视为 “太旧了”,并且新语句将替换它。即使新语句等待时间小于当前采样语句的等待时间,也会发生这种情况。
有关语句采样的信息,请参见 第 29.10 节,“Performance Schema 语句摘要和采样”。
performance_schema_max_file_classes
命令行格式 --performance-schema-max-file-classes=#
系统变量 performance_schema_max_file_classes
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 80
最小值 0
最大值 1024
文件仪器的最大数量。有关如何设置和使用此变量的信息,请参见 第 29.7 节,“Performance Schema 状态监控”。
performance_schema_max_file_handles
命令行格式 --performance-schema-max-file-handles=#
系统变量 performance_schema_max_file_handles
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 32768
最小值 0
最大值 1048576
已打开的文件对象的数目。有关如何设置和使用此变量的信息,请参见 第 29.7 节,“Performance Schema 状态监控”。
performance_schema_max_file_handles
的值应大于open_files_limit
的值:open_files_limit
会影响服务器可以支持的打开文件句柄的最大数目,而performance_schema_max_file_handles
会影响可以测量这些文件句柄中的多少个。performance_schema_max_file_instances
命令行格式 --performance-schema-max-file-instances=#
系统变量 performance_schema_max_file_instances
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
已测量的文件对象的数目。有关如何设置和使用此变量的信息,请参见 第 29.7 节,“Performance Schema 状态监控”。
performance_schema_max_index_stat
命令行格式 --performance-schema-max-index-stat=#
系统变量 performance_schema_max_index_stat
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
Performance Schema 维护统计信息的索引的最大数量。如果超过此最大值,导致索引统计信息丢失,则 Performance Schema 会递增
Performance_schema_index_stat_lost
状态变量。默认值使用performance_schema_max_table_instances
的值自动调整大小。performance_schema_max_memory_classes
命令行格式 --performance-schema-max-memory-classes=#
系统变量 performance_schema_max_memory_classes
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 470
默认值 450
最小值 0
最大值 1024
内存仪器的最大数量。有关如何设置和使用此变量的信息,请参见 第 29.7 节,“Performance Schema 状态监控”。
performance_schema_max_metadata_locks
命令行格式 --performance-schema-max-metadata-locks=#
系统变量 performance_schema_max_metadata_locks
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 10485760
元数据锁仪器的最大数量。此值控制
metadata_locks
表的大小。如果超过此最大值,导致无法测量元数据锁,则 Performance Schema 会递增Performance_schema_metadata_lock_lost
状态变量。performance_schema_max_meter_classes
命令行格式 --performance-schema-max-meter-classes=#
系统变量 performance_schema_max_meter_classes
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 30
最小值 0
最大值 64
可以创建的仪表仪器的最大数量
performance_schema_max_metric_classes
命令行格式 --performance-schema-max-metric-classes=#
系统变量 performance_schema_max_metric_classes
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 600
最小值 30
最大值 11000
可创建的指标仪器最大数量。
performance_schema_max_mutex_classes
命令行格式 --performance-schema-max-mutex-classes=#
系统变量 performance_schema_max_mutex_classes
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 350
最小值 0
最大值 1024
互斥量仪器最大数量。有关如何设置和使用此变量的信息,请参见第 29.7 节,“Performance Schema 状态监控”。
performance_schema_max_mutex_instances
命令行格式 --performance-schema-max-mutex-instances=#
系统变量 performance_schema_max_mutex_instances
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 104857600
被监控的互斥量对象最大数量。有关如何设置和使用此变量的信息,请参见第 29.7 节,“Performance Schema 状态监控”。
performance_schema_max_prepared_statements_instances
命令行格式 --performance-schema-max-prepared-statements-instances=#
系统变量 performance_schema_max_prepared_statements_instances
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 4194304
prepared_statements_instances
表中最大行数。如果超过此最大值导致无法监控已准备好的语句,则 Performance Schema 会增加Performance_schema_prepared_statements_lost
状态变量。有关如何设置和使用此变量的信息,请参见第 29.7 节,“Performance Schema 状态监控”。此变量的默认值会根据
max_prepared_stmt_count
系统变量的值自动调整。performance_schema_max_rwlock_classes
命令行格式 --performance-schema-max-rwlock-classes=#
系统变量 performance_schema_max_rwlock_classes
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 100
最小值 0
最大值 1024
读写锁仪器最大数量。有关如何设置和使用此变量的信息,请参见第 29.7 节,“Performance Schema 状态监控”。
performance_schema_max_program_instances
命令行格式 --performance-schema-max-program-instances=#
系统变量 performance_schema_max_program_instances
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
Performance Schema 维持统计信息的存储程序最大数量。如果超过此最大值,则 Performance Schema 会增加
Performance_schema_program_lost
状态变量。有关如何设置和使用此变量的信息,请参见第 29.7 节,“Performance Schema 状态监控”。performance_schema_max_rwlock_instances
命令行格式 --performance-schema-max-rwlock-instances=#
系统变量 performance_schema_max_rwlock_instances
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 104857600
被监控的读写锁对象最大数量。有关如何设置和使用此变量的信息,请参见第 29.7 节,“Performance Schema 状态监控”。
performance_schema_max_socket_classes
命令行格式 --performance-schema-max-socket-classes=#
系统变量 performance_schema_max_socket_classes
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 10
最小值 0
最大值 1024
套接字仪器最大数量。有关如何设置和使用此变量的信息,请参见第 29.7 节,“Performance Schema 状态监控”。
performance_schema_max_socket_instances
命令行格式 --performance-schema-max-socket-instances=#
系统变量 performance_schema_max_socket_instances
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
被监控的套接字对象最大数量。有关如何设置和使用此变量的信息,请参见第 29.7 节,“Performance Schema 状态监控”。
performance_schema_max_sql_text_length
命令行格式 --performance-schema-max-sql-text-length=#
系统变量 performance_schema_max_sql_text_length
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 1024
最小值 0
最大值 1048576
单位 字节 用于存储 SQL 语句的字节数最大值。该值适用于这些列所需的存储空间。
events_statements_current
、events_statements_history
和events_statements_history_long
语句事件表中的SQL_TEXT
列。events_statements_summary_by_digest
摘要表中的QUERY_SAMPLE_TEXT
列。
超过
performance_schema_max_sql_text_length
的任何字节都会被丢弃,不会出现在列中。仅在这些初始字节之后不同的语句在该列中无法区分。降低
performance_schema_max_sql_text_length
值会减少内存使用量,但如果语句仅在结尾不同,会导致更多语句变得无法区分。增加该值会增加内存使用量,但允许区分更长的语句。performance_schema_max_stage_classes
命令行格式 --performance-schema-max-stage-classes=#
系统变量 performance_schema_max_stage_classes
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 175
最小值 0
最大值 1024
阶段仪器最大数量。有关如何设置和使用此变量的信息,请参见第 29.7 节,“Performance Schema 状态监控”。
performance_schema_max_statement_classes
命令行格式 --performance-schema-max-statement-classes=#
系统变量 performance_schema_max_statement_classes
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 最小值 0
最大值 256
语句仪器最大数量。有关如何设置和使用此变量的信息,请参见第 29.7 节,“Performance Schema 状态监控”。
默认值是在服务器构建时根据客户端/服务器协议中的命令数量和服务器支持的 SQL 语句类型数量计算得出。
此变量不应更改,除非将其设置为 0 以禁用所有语句监控并保存与其相关联的所有内存。将变量设置为非零值(默认值除外)没有好处;特别是,大于默认值的值会导致分配比需要更多的内存。
performance_schema_max_statement_stack
命令行格式 --performance-schema-max-statement-stack=#
系统变量 performance_schema_max_statement_stack
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 10
最小值 1
最大值 256
Performance Schema 维持统计信息的嵌套存储程序调用最大深度。当超过此最大值时,Performance Schema 会为执行的每个存储程序语句增加
Performance_schema_nested_statement_lost
状态变量。performance_schema_max_table_handles
命令行格式 --performance-schema-max-table-handles=#
系统变量 performance_schema_max_table_handles
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
打开的表对象最大数量。此值控制
table_handles
表的大小。如果超过此最大值导致无法监控表句柄,则 Performance Schema 会增加Performance_schema_table_handles_lost
状态变量。有关如何设置和使用此变量的信息,请参见第 29.7 节,“Performance Schema 状态监控”。performance_schema_max_table_instances
命令行格式 --performance-schema-max-table-instances=#
系统变量 performance_schema_max_table_instances
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
被监控的表对象最大数量。有关如何设置和使用此变量的信息,请参见第 29.7 节,“Performance Schema 状态监控”。
performance_schema_max_table_lock_stat
命令行格式 --performance-schema-max-table-lock-stat=#
系统变量 performance_schema_max_table_lock_stat
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
Performance Schema 维持锁统计信息的表最大数量。如果超过此最大值导致表锁统计信息丢失,则 Performance Schema 会增加
Performance_schema_table_lock_stat_lost
状态变量。performance_schema_max_thread_classes
命令行格式 --performance-schema-max-thread-classes=#
系统变量 performance_schema_max_thread_classes
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 100
最小值 0
最大值 1024
线程仪器最大数量。有关如何设置和使用此变量的信息,请参见第 29.7 节,“Performance Schema 状态监控”。
performance_schema_max_thread_instances
命令行格式 --performance-schema-max-thread-instances=#
系统变量 performance_schema_max_thread_instances
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
被监控的线程对象最大数量。该值控制
threads
表的大小。如果超过此最大值导致无法监控线程,则 Performance Schema 会增加Performance_schema_thread_instances_lost
状态变量。有关如何设置和使用此变量的信息,请参见第 29.7 节,“Performance Schema 状态监控”。max_connections
系统变量会影响服务器中可以运行的线程数量。performance_schema_max_thread_instances
会影响可以监控的这些正在运行的线程数量。variables_by_thread
和status_by_thread
表仅包含有关前台线程的系统和状态变量信息。如果 Performance Schema 未监控所有线程,则此表会丢失一些行。在这种情况下,Performance_schema_thread_instances_lost
状态变量将大于零。performance_schema_session_connect_attrs_size
命令行格式 --performance-schema-session-connect-attrs-size=#
系统变量 performance_schema_session_connect_attrs_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
单位 字节 每个线程预分配的内存大小,用于保存连接属性键值对。如果客户端发送的连接属性数据的总大小超过此大小,则 Performance Schema 会截断属性数据,增加
Performance_schema_session_connect_attrs_lost
状态变量,并在log_error_verbosity
系统变量大于 1 时将截断信息写入错误日志。如果属性缓冲区有足够的空间,还会向会话属性添加一个_truncated
属性,其值为丢失的字节数。这使 Performance Schema 能够在连接属性表中公开每个连接的截断信息。无需检查错误日志即可检查此信息。performance_schema_session_connect_attrs_size
的默认值在服务器启动时自动调整大小。此值可能很小,因此如果发生截断(Performance_schema_session_connect_attrs_lost
变为非零),您可能希望将performance_schema_session_connect_attrs_size
显式设置为较大的值。虽然
performance_schema_session_connect_attrs_size
的最大允许值为 1MB,但实际最大值为 64KB,因为服务器对它接受的连接属性数据的总大小限制为 64KB。如果客户端尝试发送超过 64KB 的属性数据,服务器将拒绝连接。有关更多信息,请参见 第 29.12.9 节“Performance Schema 连接属性表”。performance_schema_setup_actors_size
命令行格式 --performance-schema-setup-actors-size=#
系统变量 performance_schema_setup_actors_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
setup_actors
表中的行数。performance_schema_setup_objects_size
命令行格式 --performance-schema-setup-objects-size=#
系统变量 performance_schema_setup_objects_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
setup_objects
表中的行数。performance_schema_show_processlist
命令行格式 --performance-schema-show-processlist[={OFF|ON}]
已弃用 是 系统变量 performance_schema_show_processlist
范围 全局 动态 是 SET_VAR
提示适用否 类型 布尔值 默认值 OFF
SHOW PROCESSLIST
语句通过从所有活动线程收集线程数据来提供进程信息。performance_schema_show_processlist
变量决定要使用哪个SHOW PROCESSLIST
实现。默认实现从线程管理器中遍历活动线程,同时持有全局互斥锁。这会对性能产生负面影响,尤其是在繁忙的系统上。
另一种
SHOW PROCESSLIST
实现基于 Performance Schemaprocesslist
表。此实现从 Performance Schema 而不是线程管理器查询活动线程数据,不需要互斥锁。
要启用替代实现,请启用
performance_schema_show_processlist
系统变量。为了确保默认实现和替代实现产生相同的信息,必须满足某些配置要求;请参见 第 29.12.22.7 节“processlist 表”。-
命令行格式 --performance-schema-users-size=#
系统变量 performance_schema_users_size
范围 全局 动态 否 SET_VAR
提示适用否 类型 整数 默认值 -1
(表示自动缩放;请勿分配此字面值)最小值 -1
(表示自动缩放;请勿分配此字面值)最大值 1048576
users
表中的行数。如果此变量为 0,则 Performance Schema 不会在users
表中维护连接统计信息,也不会在status_by_user
表中维护状态变量信息。