【MySQL内置数据库】performance_schema
MySQL 8.0.37的performance_schema数据库包含111张表,用于监控数据库服务器性能。这些表可分类为:账户信息表(如accounts)、锁与索引表(如data_locks)、内存使用表(如memory_summary_global_by_event_name)、I/O操作表(如file_summary_by_event_name)、线程与连接表(如threads)、SQL语
目录
binary_log_transaction_compression_stats
events_errors_summary_by_account_by_error
events_errors_summary_by_host_by_error
events_errors_summary_by_thread_by_error
events_errors_summary_by_user_by_error
events_errors_summary_global_by_error
events_stages_summary_by_account_by_event_name
events_stages_summary_by_host_by_event_name
events_stages_summary_by_thread_by_event_name
events_stages_summary_by_user_by_event_name
events_stages_summary_global_by_event_name
events_statements_histogram_by_digest
events_statements_histogram_global
events_statements_history_long
events_statements_summary_by_account_by_event_name
events_statements_summary_by_digest
events_statements_summary_by_host_by_event_name
events_statements_summary_by_program
events_statements_summary_by_thread_by_event_name
events_statements_summary_by_user_by_event_name
events_statements_summary_global_by_event_name
events_transactions_history_long
events_transactions_summary_by_account_by_event_name
events_transactions_summary_by_host_by_event_name
events_transactions_summary_by_thread_by_event_name
events_transactions_summary_by_user_by_event_name
events_transactions_summary_global_by_event_name
events_waits_summary_by_account_by_event_name
events_waits_summary_by_host_by_event_name
events_waits_summary_by_instance
events_waits_summary_by_thread_by_event_name
events_waits_summary_by_user_by_event_name
events_waits_summary_global_by_event_name
memory_summary_by_account_by_event_name
memory_summary_by_host_by_event_name
memory_summary_by_thread_by_event_name
memory_summary_by_user_by_event_name
memory_summary_global_by_event_name
objects_summary_global_by_type
replication_applier_configuration
replication_applier_global_filters
replication_applier_status_by_coordinator
replication_applier_status_by_worker
replication_asynchronous_connection_failover
replication_asynchronous_connection_failover_managed
replication_connection_configuration
replication_group_member_stats
table_io_waits_summary_by_index_usage
table_io_waits_summary_by_table
table_lock_waits_summary_by_table
MySQL8.0.37 performance_schema下共有111张表

官方文档:https://dev.mysql.com/doc/refman/8.0/en/performance-schema.html
统计
|
0 |
accounts |
|
|
1 |
binary_log_transaction_compression_stats |
|
|
2 |
cond_instances |
|
|
3 |
data_lock_waits |
记录和分析 InnoDB 存储引擎中发生的行锁等待事件 |
|
4 |
data_locks |
记录 InnoDB 存储引擎中发生的行锁等待事件 |
|
5 |
error_log |
|
|
6 |
events_errors_summary_by_account_by_error |
|
|
7 |
events_errors_summary_by_host_by_error |
|
|
8 |
events_errors_summary_by_thread_by_error |
|
|
9 |
events_errors_summary_by_user_by_error |
|
|
10 |
events_errors_summary_global_by_error |
|
|
11 |
events_stages_current |
记录当前会话中正在执行的事件的各个阶段信息 |
|
12 |
events_stages_history |
|
|
13 |
events_stages_history_long |
|
|
14 |
events_stages_summary_by_account_by_event_name |
|
|
15 |
events_stages_summary_by_host_by_event_name |
|
|
16 |
events_stages_summary_by_thread_by_event_name |
|
|
17 |
events_stages_summary_by_user_by_event_name |
|
|
18 |
events_stages_summary_global_by_event_name |
|
|
19 |
events_statements_current |
用于记录当前正在执行的语句信息 |
|
20 |
events_statements_histogram_by_digest |
|
|
21 |
events_statements_histogram_global |
|
|
22 |
events_statements_history |
|
|
23 |
events_statements_history_long |
|
|
24 |
events_statements_summary_by_account_by_event_name |
|
|
25 |
events_statements_summary_by_digest |
|
|
26 |
events_statements_summary_by_host_by_event_name |
|
|
27 |
events_statements_summary_by_program |
|
|
28 |
events_statements_summary_by_thread_by_event_name |
|
|
29 |
events_statements_summary_by_user_by_event_name |
|
|
30 |
events_statements_summary_global_by_event_name |
|
|
31 |
events_transactions_current |
记录当前活跃的事务信息 |
|
32 |
events_transactions_history |
|
|
33 |
events_transactions_history_long |
记录长时间运行的事务事件的历史信息 |
|
34 |
events_transactions_summary_by_account_by_event_name |
|
|
35 |
events_transactions_summary_by_host_by_event_name |
|
|
36 |
events_transactions_summary_by_thread_by_event_name |
|
|
37 |
events_transactions_summary_by_user_by_event_name |
|
|
38 |
events_transactions_summary_global_by_event_name |
|
|
39 |
events_waits_current |
记录当前正在等待的事件 |
|
40 |
events_waits_history |
|
|
41 |
events_waits_history_long |
|
|
42 |
events_waits_summary_by_account_by_event_name |
|
|
43 |
events_waits_summary_by_host_by_event_name |
|
|
44 |
events_waits_summary_by_instance |
|
|
45 |
events_waits_summary_by_thread_by_event_name |
|
|
46 |
events_waits_summary_by_user_by_event_name |
|
|
47 |
events_waits_summary_global_by_event_name |
|
|
48 |
file_instances |
记录哪些文件被频繁访问以及它们的打开次数 |
|
49 |
file_summary_by_event_name |
|
|
50 |
file_summary_by_instance |
|
|
51 |
global_status |
|
|
52 |
global_variables |
|
|
53 |
host_cache |
|
|
54 |
hosts |
|
|
55 |
innodb_redo_log_files |
|
|
56 |
keyring_component_status |
|
|
57 |
keyring_keys |
|
|
58 |
log_status |
|
|
59 |
memory_summary_by_account_by_event_name |
|
|
60 |
memory_summary_by_host_by_event_name |
|
|
61 |
memory_summary_by_thread_by_event_name |
|
|
62 |
memory_summary_by_user_by_event_name |
|
|
63 |
memory_summary_global_by_event_name |
|
|
64 |
metadata_locks |
|
|
65 |
mutex_instances |
|
|
66 |
objects_summary_global_by_type |
|
|
67 |
performance_timers |
|
|
68 |
persisted_variables |
|
|
69 |
prepared_statements_instances |
|
|
70 |
processlist |
|
|
71 |
replication_applier_configuration |
|
|
72 |
replication_applier_filters |
|
|
73 |
replication_applier_global_filters |
|
|
74 |
replication_applier_status |
|
|
75 |
replication_applier_status_by_coordinator |
记录主从复制过程中的错误信息 |
|
76 |
replication_applier_status_by_worker |
记录主从复制过程中worker线程状态的信息 |
|
77 |
replication_asynchronous_connection_failover |
记录异步复制连接失败的配置信息 |
|
78 |
replication_asynchronous_connection_failover_managed |
|
|
79 |
replication_connection_configuration |
用于记录复制连接的配置信息 |
|
80 |
replication_connection_status |
用于记录复制连接的状态信息,以及错误信息 |
|
81 |
replication_group_member_stats |
|
|
82 |
replication_group_members |
用于记录复制组中每个成员的信息 |
|
83 |
rwlock_instances |
|
|
84 |
session_account_connect_attrs |
|
|
85 |
session_connect_attrs |
|
|
86 |
session_status |
|
|
87 |
session_variables |
|
|
88 |
setup_actors |
|
|
89 |
setup_consumers |
|
|
90 |
setup_instruments |
|
|
91 |
setup_objects |
|
|
92 |
setup_threads |
|
|
93 |
socket_instances |
|
|
94 |
socket_summary_by_event_name |
|
|
95 |
socket_summary_by_instance |
|
|
96 |
status_by_account |
|
|
97 |
status_by_host |
|
|
98 |
status_by_thread |
|
|
99 |
status_by_user |
|
|
100 |
table_handles |
|
|
101 |
table_io_waits_summary_by_index_usage |
|
|
102 |
table_io_waits_summary_by_table |
|
|
103 |
table_lock_waits_summary_by_table |
|
|
104 |
threads |
|
|
105 |
tls_channel_status |
|
|
106 |
user_defined_functions |
|
|
107 |
user_variables_by_thread |
|
|
108 |
users |
|
|
109 |
variables_by_thread |
|
|
110 |
variables_info |
accounts
这个表是MySQL性能模式中的accounts表,用于存储数据库用户账户的信息。以下是表中每一列的含义:
- USER: 数据库用户名。
- HOST: 用户连接到数据库的主机名或IP地址。
- CURRENT_CONNECTIONS: 当前用户会话的数量。
- TOTAL_CONNECTIONS: 自从服务器启动以来该用户建立的连接总数。
- MAX_SESSION_CONTROLLED_MEMORY: 为用户会话设置的最大受控内存。
- MAX_SESSION_TOTAL_MEMORY: 为用户会话设置的最大总内存。
这些列提供了关于数据库用户账户的连接和内存使用情况的详细信息,有助于监控和管理系统资源。表中还有一个唯一键UNIQUE KEY ACCOUNT ('USER', 'HOST'),用于确保每个用户和主机的组合在表中是唯一的。

binary_log_transaction_compression_stats
这个表是MySQL性能模式中的binary_log_transaction_compression_stats表,用于记录二进制日志事务压缩的统计信息。以下是表中每一列的含义:
- LOG_TYPE: 日志类型,指示事务被写入的日志类型。
- COMPRESSION_TYPE: 事务压缩使用的算法。
- TRANSACTION_COUNTER: 写入的事务总数。
- COMPRESSED_BYTES_COUNTER: 压缩后的总字节数。
- UNCOMPRESSED_BYTES_COUNTER: 压缩前的总字节数。
- COMPRESSION_PERCENTAGE: 压缩率,以百分比表示。
- FIRST_TRANSACTION_ID: 写入的第一个事务的ID。
- FIRST_TRANSACTION_UNCOMPRESSED_BYTES: 第一个事务压缩前的字节数。
- FIRST_TRANSACTION_TIMESTAMP: 第一个事务写入的时间戳。
- LAST_TRANSACTION_ID: 最后一个事务的ID。
- LAST_TRANSACTION_COMPRESSED_BYTES: 最后一个事务压缩后的字节数。
- LAST_TRANSACTION_UNCOMPRESSED_BYTES: 最后一个事务压缩前的字节数。
- LAST_TRANSACTION_TIMESTAMP: 最后一个事务写入的时间戳。
这些列提供了关于二进制日志事务压缩的详细统计信息,有助于分析压缩效率和性能。表中的数据可以帮助数据库管理员了解压缩对存储和网络带宽的影响。

cond_instances
cond_instances 是 MySQL 和 MariaDB 中 performance_schema 数据库的一个表,用于记录服务器执行期间性能模式所看到的所有条件(Condition)。
表的作用
条件(Condition)是一种同步机制,用于在代码中信号特定事件的发生,以便等待该条件的线程可以恢复工作。例如,当一个线程等待某个事件发生时,cond_instances 表中的 NAME 列会显示该线程正在等待的条件名称,但无法直接显示是哪个线程触发了该条件。
cond_instances 表包含以下列:
NAME:与条件相关联的仪器(instrument)名称。OBJECT_INSTANCE_BEGIN:检测条件在内存中的地址。
该表主要用于性能监控和调试,帮助开发者和 DBA 理解线程等待的条件及其触发机制。

data_lock_waits
data_lock_waits 表是 MySQL Performance Schema 中的一个表,用于记录和分析 InnoDB 存储引擎中发生的行锁等待事件。这个表可以帮助你理解哪些事务在等待获取锁,哪些事务持有锁,以及它们之间的等待关系。以下是表中每一列的详细解释:
- REQUESTING_ENGINE_LOCK_ID: 请求锁的引擎锁ID。标识请求锁的事务的引擎锁ID。
- REQUESTING_ENGINE_TRANSACTION_ID: 请求锁的事务ID。标识请求锁的事务ID。
- REQUESTING_THREAD_ID: 请求锁的线程ID。标识请求锁的线程ID。
- REQUESTING_EVENT_ID: 请求锁的事件ID。标识请求锁的事务中的事件ID。
- BLOCKING_ENGINE_LOCK_ID: 阻塞请求事务的引擎锁ID。标识阻塞请求事务的引擎锁ID。
- BLOCKING_TRANSACTION_ID: 阻塞事务的事务ID。标识持有锁的事务ID。
- BLOCKING_THREAD_ID: 阻塞线程的线程ID。标识持有锁的线程ID。
- BLOCKING_EVENT_ID: 阻塞事务的事件ID。标识持有锁的事务中的事件ID。
这些列共同描述了事务之间因锁等待而产生的依赖关系,可以帮助你识别和解决数据库中的锁争用问题。
例如,如果你发现系统中存在长时间运行的事务,或者某些事务似乎在等待其他事务释放锁,你可以查询 data_lock_waits 表来获取详细信息,了解哪些事务在等待哪些锁,以及哪些事务持有这些锁。这有助于你优化事务处理死锁争用、性能瓶颈等问题。
在实际使用中,你可以通过以下查询来获取锁等待的详细信息:
SELECT
1 AS Waiting_thread,
2 AS Blocking_thread,
3 AS Waiting_event,
4 AS Waiting_time
FROM data_lock_waits;
这将返回等待的线程ID、阻塞它的线程ID以及等待时间(秒)。通过这些信息,你可以进一步分析和优化数据库性能。

data_locks
data_locks 表是 MySQL Performance Schema 中的一个表,用于记录 InnoDB 存储引擎中发生的行锁等待事件。以下是表中每一列的含义:
- ENGINE:请求锁的引擎名称(例如 InnoDB)。
- ENGINE_LOCK_ID:请求锁的事务的引擎锁ID。
- ENGINE_TRANSACTION_ID:请求锁的事务ID。
- THREAD_ID:请求锁的线程ID。
- EVENT_ID:请求锁的事件ID。
- OBJECT_SCHEMA:被锁定对象所在的数据库名称。
- OBJECT_NAME:被锁定的对象名称(例如表名)。
- PARTITION_NAME:被锁定的对象的分区名称(如果有)。
- SUBPARTITION_NAME:被锁定的对象的子分区名称(如果有)。
- INDEX_NAME:被锁定的索引名称。
- OBJECT_INSTANCE_BEGIN:对象实例开始时间。
- LOCK_TYPE:锁类型(例如行锁、表锁等)。
- LOCK_MODE:锁模式(例如共享锁、排他锁等)。
- LOCK_STATUS:锁状态(例如等待、阻塞等)。
- LOCK_DATA:锁相关的数据,以 JSON 格式存储,包含请求事务ID、引擎等信息。
- 查看当前所有锁等待事件:
SELECT * FROM data_locks;
- 查看特定表的锁等待事件:
SELECT * FROM data_locks WHERE OBJECT_SCHEMA = 'your_db' AND OBJECT_NAME = 'your_table';
- 看特定事务的锁等待事件:
SELECT * FROM data_locks WHERE ENGINE_TRANSACTION_ID = your_transaction_id;
通过这些查询,你可以了解哪些事务在等待获取锁,哪些事务持有锁,以及它们之间的等待关系。这有助于诊断和解决数据库中的锁争用问题。

error_log
error_log 表是 MySQL Performance Schema 中的一个表,用于记录 MySQL 服务器的错误日志信息。以下是表中每一列的含义:
- LOGGED:记录创建时间戳,表示错误发生的时间。
- THREAD_ID:产生错误的线程ID。
- PRIO:错误优先级,可以是
System、Error、Warning或Note。 - ERROR_CODE:错误代码,表示错误的具体代码。
- SUBSYSTEM:子系统名称,表示错误的来源系统(如 MySQL 服务器、存储引擎等)。
- DATA:错误信息文本,包含错误的详细描述。
- 查看所有错误日志:
SELECT * FROM error_log;
- 查看特定类型的错误日志(例如,错误):
SELECT * FROM error_log WHERE PRIO = 'Error';
- 查特定线程的错误日志:
SELECT * FROM error_log WHERE THREAD_ID = your_thread_id;
通过这些查询,你可以了解 MySQL 服务器上发生的错误信息,包括错误发生时间、错误级别、错误代码、错误来源和详细描述。这有助于诊断和解决数据库中的问题。

events_errors_summary_by_account_by_error
events_errors_summary_by_account_by_error 表是 MySQL Performance Schema 中的一个表,用于按账户统计错误事件的摘要信息。以下是表中每一列的含义:
- USER:发生错误的用户名称。
- HOST:发生错误的主机名。
- ERROR_NUMBER:错误代码。
- ERROR_NAME:错误名称。
- SQL_STATE:SQL 状态。
- SUM_ERROR_RAISED:统计错误发生的次数。
- SUM_ERROR_HANDLED:统计已处理错误的次数。
- FIRST_SEEN:首次看到错误的时间戳。
- LAST_SEEN:最后看到错误的时间戳。
- 查看所有错误摘要:
SELECT * FROM events_errors_summary_by_account_by_error;
- 查特定用户的错误摘要:
SELECT * FROM events_errors_summary_by_account_by_error WHERE USER = 'your_user';
- 按错误代码过滤:
SELECT * FROM events_errors_summary_by_account_by_error WHERE ERROR_NUMBER = your_error_number;
通过这些查询,你可以了解哪些用户在什么主机上发生了哪些错误,错误的名称、SQL 状态、发生次数以及首次和最后发生时间。这有助于诊断和解决数据库中的问题。

events_errors_summary_by_host_by_error
events_errors_summary_by_host_by_error 表是 MySQL Performance Schema 中的一个表,用于按主机和错误类型统计错误信息。以下是表中每一列的含义:
- HOST:发生错误的主机名。
- ERROR_NUMBER:错误代码。
- ERROR_NAME:错误名称。
- SQL_STATE:SQL 状态。
- SUM_ERROR_RAISED:统计错误发生的次数。
- SUM_ERROR_HANDLED:统计已处理错误的次数。
- FIRST_SEEN:首次看到错误的时间戳。
- LAST_SEEN:最后看到错误的时间戳。
- 查看所有错误摘要:
SELECT * FROM events_errors_summary_by_host_by_error;
- 查特定主机的错误摘要:
SELECT * FROM events_errors_summary_by_host_by_error WHERE HOST = 'your_host';
- 按错误代码过滤:
SELECT * FROM events_errors_summary_by_host_by_error WHERE ERROR_NUMBER = your_error_number;
通过这些查询,你可以了解哪些主机上发生了哪些错误,错误的名称、SQL 状态、发生次数以及首次和最后发生时间。这有助于诊断和解决数据库中的问题。

events_errors_summary_by_thread_by_error
events_errors_summary_by_thread_by_error 表是 MySQL Performance Schema 中的一个表,用于按线程和错误类型统计错误信息。以下是表中每一列的含义:
- THREAD_ID:发生错误的线程ID。
- ERROR_NUMBER:错误代码。
- ERROR_NAME:错误名称。
- SQL_STATE:SQL 状态。
- SUM_ERROR_RAISED:统计错误发生的次数。
- SUM_ERROR_HANDLED:统计已处理错误的次数。
- FIRST_SEEN:首次看到错误的时间戳。
- LAST_SEEN:最后看到的时间戳。
- 查看所有错误摘要:
SELECT * FROM events_errors_summary_by_thread_by_error;
- 查特定线程的错误摘要:
SELECT * FROM events_errors_summary_by_thread_by_error WHERE THREAD_ID = your_thread_id;
- 按错误代码过滤:
SELECT * FROM events_summary_by_thread_by_thread_by_error WHERE ERROR_NUMBER = your_error_number;
通过这些查询,你可以了解哪些线程上发生了哪些错误,错误的名称、SQL 状态、发生次数以及首次和最后发生时间。这有助于诊断和解决数据库中的问题。

events_errors_summary_by_user_by_error
events_errors_summary_by_user_by_error 表是 MySQL Performance Schema 中的一个表,用于按用户和错误类型统计错误信息。以下是表中每一列的含义:
- USER:发生错误的用户名称。
- ERROR_NUMBER:错误代码。
- ERROR_NAME:错误名称。
- SQL_STATE:SQL 状态。
- SUM_ERROR_RAISED:统计错误发生的次数。
- SUM_ERROR_HANDLED:统计已处理错误的次数。
- FIRST_SEEN:首次看到的时间戳。
- LAST_SEEN:最后看到的时间戳。
- 查看所有错误摘要:
SELECT * FROM events_errors_summary_by_user_by_error;
- 查特定用户的错误摘要:
SELECT * FROM events_errors_summary_by_user_by_error WHERE USER = 'your_user';
- 按错误代码过滤:
SELECT * FROM events_summary_by_user_by_error WHERE ERROR_NUMBER = your_error_number;
通过这些查询,你可以了解哪些用户发生了哪些错误,错误的名称、SQL 状态、发生次数以及首次和最后发生时间。这有助于诊断和解决数据库中的问题。

events_errors_summary_global_by_error
events_errors_summary_global_by_error 表是 MySQL Performance Schema 中的一个表,用于按错误类型统计全局错误信息。以下是表中每一列的含义:
- ERROR_NUMBER:错误代码。
- ERROR_NAME:错误名称。
- SQL_STATE:SQL 状态。
- SUM_ERROR_RAISED:统计错误发生的次数。
- SUM_ERROR_HANDLED:统计已处理错误的次数。
- FIRST_SEEN:首次看到的时间戳。
- LAST_SEEN:最后看到的时间戳。
- 查看所有错误摘要:
SELECT * FROM events_errors_summary_global_by_error;
- 查特定错误摘要:
SELECT * FROM events_errors_summary_global_by_error WHERE ERROR_NUMBER = your_error_number;
通过这些查询,你可以了解哪些错误发生了多少次,错误的名称、SQL 状态、发生次数以及首次和最后发生时间。这有助于诊断和解决数据库中的问题。

events_stages_current
events_stages_current 表是 MySQL Performance Schema 中的一个表,用于记录当前会话中正在执行的事件的各个阶段信息。以下是表中每一列的含义:
- THREAD_ID:线程ID,标识正在执行事件的线程。
- EVENT_ID:事件ID。
- END_EVENT_ID:结束事件ID。
- EVENT_NAME:事件名称。
- SOURCE:事件来源(例如,可能是
SERVER、WAIT、USER等)。 - TIMER_START:事件开始时间戳。
- TIMER_END:事件结束时间戳。
- TIMER_WAIT:等待时间(如果事件处于等待状态)。
- WORK_COMPLETED:已完成的工作量。
- WORK_ESTIMATED:估计剩余工作量。
- NESTING_EVENT_ID:嵌套事件ID(如果有)。
- NESTING_EVENT_TYPE:嵌套事件类型(
TRANSACTION、、STAGE或WAIT`)。
- 查看当前所有事件:
SELECT * FROM events_stages_current;
- 查特定线程的事件:
SELECT * FROM events_stages_current WHERE THREAD_ID = your_thread_id;
通过这些查询,你可以了解哪些线程正在执行哪些事件,事件名称、来源、开始和结束时间、等待时间、完成情况等信息。这有助于诊断和解决数据库中的问题。

events_stages_history
events_stages_history 表是 MySQL Performance Schema 中的一个表,用于记录历史事件的各个阶段信息。以下是表中每一列的含义:
- THREAD_ID:线程ID,标识执行事件的线程。
- EVENT_ID:事件ID。
- END_EVENT_ID:结束事件ID。
- EVENT_NAME:事件名称。
- SOURCE:事件来源(例如,
SERVER、USER等)。 - TIMER_START:事件开始时间戳。
- TIMER_END:事件结束时间戳。
- TIMER_WAIT:等待时间(如果事件处于等待状态)。
- WORK_COMPLETED:已完成的工作量。
- WORK_ESTIMATED:估计剩余工作量。
- NESTING_EVENT_ID:嵌套事件ID(如果有)。
- NESTING_EVENT_TYPE:嵌套事件类型(
TRANSACTION、STAGE或WAIT)。
- 查看所有事件:
SELECT * FROM events_stages_history;
- 查特定线程的事件:
SELECT * FROM events_stages_history WHERE THREAD_ID = your_thread_id;
通过这些查询,你可以了解哪些线程上发生了哪些事件,事件名称、来源、开始和结束时间、等待时间、完成情况等信息。这有助于诊断和解决数据库中的问题。

events_stages_history_long
events_stages_history_long 表是 MySQL Performance Schema 中的一个表,用于记录长时间运行的事件的各个阶段信息。以下是表中每一列的含义:
- THREAD_ID:线程ID,标识执行事件的线程。
- EVENT_ID:事件ID。
- END_EVENT_ID:结束事件ID。
- EVENT_NAME:事件名称。
- SOURCE:事件来源(例如,
SERVERUSER、WAIT`等)。 - TIMER_START:事件开始时间戳。
- TIMER_END:事件结束时间戳。
- TIMER_WAIT:等待时间(如果事件处于等待状态)。
- WORK_COMPLETED:已完成的工作量。
- WORK_ESTIMATED:估计剩余工作量。
- NESTING_EVENT_ID:嵌套事件ID(如果有)。
- NESTING_EVENT_TYPE:嵌套事件类型(
TRANSACTION、STAGE或WAIT)。
- 查看所有事件:
SELECT * FROM events_stages_history;
- 查特定线程的事件:
SELECT * FROM events_stages_history WHERE THREAD_ID = your_thread_id;
通过这些查询,你可以了解哪些线程上发生了哪些事件,事件名称、来源、开始和结束时间、等待时间、完成情况等信息。这有助于诊断和解决数据库中的问题。

events_stages_summary_by_account_by_event_name
events_stages_summary_by_account_by_event_name 表是 MySQL Performance Schema 中的一个表,用于按账户和事件名称统计事件名称统计阶段信息。以下是表中每一列的含义:
- USER:发生事件的用户。
- HOST:发生事件的主机名。
- EVENT_NAME:事件名称。
- COUNT_STAR:事件开始的次数。
- SUM_TIMER_WAIT:总等待时间(毫秒)。
- MIN_TIMER_WAIT:最小等待时间(毫秒)。
- AVG_TIMER_WAIT:平均等待时间(毫秒)。
- MAX_TIMER_WAIT:最大等待时间(毫秒)。
- 查看所有事件摘要:
SELECT * FROM events_stages_summary_by_event_name;
- 查特定事件的摘要:
SELECT * FROM events_stages_summary_by_event_name WHERE EVENT_NAME = 'your_event_name';
- 查特定用户的错误摘要:
SELECT * FROM events_stages_summary_by_event_name WHERE USER = 'your_user';
通过这些查询,你可以了解哪些用户发生了哪些事件,事件名称、等待时间、发生次数以及首次发生时间。这有助于诊断和解决数据库中的问题。

events_stages_summary_by_host_by_event_name
events_stages_summary_by_host_by_event_name 表是 MySQL Performance Schema 中的一个表,用于按主机和事件名称统计事件名称统计事件阶段信息。以下是表中每一列的含义:
- HOST:发生事件的主机名。
- EVENT_NAME:事件名称。
- COUNT_STAR:事件开始的次数。
- SUM_TIMER_WAIT:总等待时间(毫秒)。
- MIN_TIMER_WAIT:最小等待时间(毫秒)。
- AVG_WAIT:平均等待时间(毫秒)。
- MMAX_TIMER_WAIT:最大等待时间(毫秒)。
- 查看所有事件摘要:
SELECT * FROM events_stages_summary_by_event_name;
- 查特定事件的摘要:
SELECT * FROM events_stages_by_event_name WHERE EVENT_NAME = 'your_event_name';
- 查特定主机的错误摘要:
SELECT * FROM events_stages_by_event_name WHERE HOST = 'your_host';
通过这些查询,你可以了解哪些主机上发生了哪些事件,事件名称、等待时间、发生次数以及首次发生时间。这有助于诊断和解决数据库中的问题。

events_stages_summary_by_thread_by_event_name
events_stages_summary_by_thread_by_thread_by_event_name 表是 MySQL Performance Schema 中的一个表,用于按线程和事件名称统计事件阶段信息。以下是表中每一列的含义:
- THREAD_ID:线程ID,标识执行事件的线程。
- EVENT_NAME:事件名称。
- COUNT_STAR:事件开始的次数。
- SUM_TIMER_WAIT:总等待时间(毫秒)。
- MIN_TIMER_WAIT:最小等待时间(毫秒)。
- AVG_WAIT:平均等待时间(毫秒)。
- MAX_TIMER_WAIT:最大等待时间(毫秒)。
- 查看所有事件摘要:
SELECT * FROM events_stages_summary_by_thread_by_event_name;
- 查特定事件的摘要:
SELECT * FROM events_summary_by_thread_by_event_name WHERE EVENT_NAME = 'your_event_name';
- 查特定线程的错误摘要:
SELECT * FROM events_summary_by_thread_by_event_name WHERE THREAD_ID = your_thread_id;
通过这些查询,你可以了解哪些线程上发生了哪些事件,事件名称、等待时间、发生次数以及首次发生时间。这有助于诊断和解决数据库中的问题。

events_stages_summary_by_user_by_event_name
events_stages_summary_by_user_by_user_by_event_name 表是 MySQL Performance Schema 中的一个表,用于按用户和事件名称统计事件阶段信息。以下是表中每一列的含义:
- USER:发生错误的用户名。
- EVENT_NAME:事件名称。
- COUNT_STAR:事件开始的次数。
- SUM_TIMER_WAIT:总等待时间(毫秒)。
- MIN_TIMER_WAIT:最小等待时间(毫秒)。
- AVG_WAIT:平均等待时间(毫秒)。
- MAX_WAIT:最大等待时间(毫秒)。
- 查看所有错误摘要:
SELECT * FROM events_summary_by_user_by_event_name;
- 查特定事件的摘要:
SELECT * FROM events_summary_by_user_by_event_name WHERE EVENT_NAME = 'your_event_name';
- 查特定用户的错误摘要:
SELECT * FROM events_summary_by_user_by_event_name WHERE USER = 'your_user';
通过这些查询,你可以了解哪些用户发生了哪些用户发生了哪些事件,事件名称、等待时间、发生次数以及首次发生时间。这有助于诊断和解决数据库中的问题。

events_stages_summary_global_by_event_name
events_stages_summary_global_by_event_name 表是 MySQL Performance Schema 中的一个表,用于按事件名称统计全局事件阶段信息。以下是表中每一列的含义:
- EVENT_NAME:事件名称。
- COUNT_STAR:事件开始的次数。
- SUM_TIMER_WAIT:总等待时间(毫秒)。
- MIN_TIMER_WAIT:最小等待时间(毫秒)。
- AVG_WAIT:平均等待时间(毫秒)。
- MAX_WAIT:最大等待时间(毫秒)。
- 查所有事件摘要:
SELECT * FROM events_stages_summary_global_by_event_name;
- 查特定事件的摘要:
SELECT * FROM events_summary_global_by_event_name WHERE EVENT_NAME = 'your_event_name';
通过这些查询,你可以了解哪些事件发生了,事件名称、等待时间、发生次数以及首次发生时间。这有助于诊断和解决数据库中的问题。

events_statements_current
events_statements_current 表是 MySQL Performance Schema 中的一个表,用于记录当前正在执行的语句信息。以下是表中每一列的含义:
- THREAD_ID:执行语句的线程ID。
- EVENT_ID:事件ID。
- END_EVENT_ID:结束事件ID。
- EVENT_NAME:语句名称(例如,
Query)。 - SOURCE:语句来源(例如,
SERVER、USER等)。 - TIMER_START:语句开始时间戳。
- TIMER_END:语句结束时间戳。
- TIMER_WAIT:等待时间(如果语句处于等待状态)。
- WORK_COMPLETED:已完成的工作量。
- WORK_ESTIMATED:估计剩余工作量。
- _NESTING_EVENT_ID:嵌套事件ID(如果有)。
- _NESTING_EVENT_TYPE:嵌套事件类型(
TRANSACTION、、STATEMENT、、WAIT)。 - _ERRORS:错误代码。
- _WARNINGS:警告数量。
- ROWS_AFFECTED:受影响的行数。
- ROWS_SENT:发送的行数。
- ROWS_EXAMINED:已检查的行数。
- CREATED_TMP_DISK_TABLES:创建的临时磁盘表数。
- CREATED_TMP_TABLES:创建的临时表数。
- SELECT_FULL_RANGE:范围检查。
- SELECT_RANGE:范围检查。
- SORT_MERGE_PAGES:排序页数。
- SORT_RANGE:排序页数。
- SORT_ROWS:排序行数。
- SCAN:扫描行数。
- NO_INDEX_USED:未使用索引数。
- NO_GOOD_INDEX_USED:未使用的索引数。
- NESTING_EVENT_ID:嵌套事件ID。
- NESTING_EVENT_TYPE:嵌套事件类型(
TRANSACTION、、MENT、、WAIT)。
- 查看所有语句:
SELECT * FROM events_statements_current;
- 查特定语句:
SELECT * FROM events_statements_current WHERE THREAD_ID = your_thread_id;
通过这些查询,你可以了解哪些线程上发生了哪些语句,语句名称、来源、开始和结束时间、等待时间、完成情况等信息。这有助于诊断和解决数据库中的问题。


events_statements_histogram_by_digest
events_statements_history_by_digest 表是 MySQL Performance Schema 中的一个表,用于记录语句的摘要信息。以下是表中每一列的含义:
- SCHEMA_NAME:数据库名称。
- DIGEST_NUMBER:摘要编号。
- BUCKET_NUMBER:桶编号。
- BUCKET_TIMER_LOW:桶的开始时间戳。
- BUCKET_TIMER_HIGH:桶结束时间戳。
- COUNT_BUCKET:桶中语句数量。
- COUNT_BUCKET_AND_LOWER:桶中语句数量的下限。
- BUCKET_QUANTITY:桶数量。
- SCHEMA_NAME:数据库名称。
- DIGEST:摘要。
- 查所有摘要:
SELECT * FROM events_statements_history_by_digest;
- 查特定数据库的摘要:
SELECT * FROM events_statements_history_by_digest WHERE SCHEMA_NAME = 'your_schema';
通过这些查询,你可以了解哪些数据库发生了哪些数据库,摘要、摘要编号、时间、数量以及首次发生时间。这有助于诊断和解决数据库中的问题。

events_statements_histogram_global
events_statements_histogram_global 表是 MySQL Performance Schema 中的一个表,用于记录全局语句的摘要信息。以下是表中每一列的含义:
- BUCKET_NUMBER:桶编号。
- BUCKET_TIMER_LOW:桶开始时间戳。
- BUCKET_TIMER_HIGH:桶结束时间戳。
- COUNT_BUCKET:桶中语句数量。
- COUNT_BUCKET:桶中语句数量。
- COUNT_BUCKET_AND_LOWER:桶中语句数量的下限。
- BUCKET_QUANTITY:桶数量。
- 查所有语句:
SELECT * FROM events_statements_histogram_global;
这些查询,你可以了解哪些语句,开始时间、结束时间、数量等信息。这有助于诊断和解决数据库中的问题。

events_statements_history
这个表是MySQL性能模式中的events_statements_history表,用于记录语句事件的执行历史。以下是表中每一列的含义:
- THREAD_ID: 执行语句的线程ID。
- EVENT_ID: 语句事件的唯一标识符。
- END_EVENT_ID: 语句事件结束的唯一标识符。
- EVENT_NAME: 语句事件的名称,例如“statement”或“stage”。
- SOURCE: 语句的来源,例如用户或程序。
- TIMER_START: 语句开始执行的时间戳。
- TIMER_END: 语句结束执行的时间戳。
- TIMER_WAIT: 语句等待的时间。
- LOCK_TIME: 语句等待锁的时间。
- SQL_TEXT: 执行的SQL语句文本。
- DIGEST: SQL语句的摘要信息,用于聚合相似的查询。
- DIGEST_TEXT: 摘要文本,提供摘要的详细信息。
- CURRENT_SCHEMA: 当前使用的数据库模式。
- OBJECT_TYPE: 对象类型,例如表或存储过程。
- OBJECT_SCHEMA: 对象所在的数据库模式。
- OBJECT_NAME: 对象的名称。
- OBJECT_INSTANCE_BEGIN: 对象实例的开始时间戳。
- MYSQL_ERRNO: 语句执行时返回的错误代码。
- RETURNED_SQLSTATE: 返回的SQL状态码。
- MESSAGE_TEXT: 错误或消息的文本描述。
- ERRORS: 语句执行过程中发生的错误数量。
- WARNINGS: 语句执行过程中产生的警告数量。
- ROWS_AFFECTED: 语句影响的行数。
- ROWS_SENT: 发送到客户端的行数。
- ROWS_EXAMINED: 语句检查的行数。
- CREATED_TMP_DISK_TABLES: 语句执行过程中创建的临时磁盘表数量。
- CREATED_TMP_TABLES: 语句执行过程中创建的临时表数量。
- SELECT_FULL_JOIN: 是否执行了全表连接。
- SELECT_FULL_RANGE_JOIN: 是否执行了全范围连接。
- SELECT_RANGE: 是否执行了范围扫描。
- SELECT_RANGE_CHECK: 是否执行了范围检查。
- SELECT_SCAN: 是否执行了全表扫描。
- SORT_MERGE_PASSES: 排序合并的遍历次数。
- SORT_RANGE: 是否执行了范围排序。
- SORT_ROWS: 排序的行数。
- SORT_SCAN: 是否执行了扫描排序。
- NO_INDEX_USED: 是否没有使用索引。
- NO_GOOD_INDEX_USED: 是否没有使用合适的索引。
- NESTING_EVENT_ID: 嵌套事件的ID。
- NESTING_EVENT_TYPE: 嵌套事件的类型,例如“TRANSACTION”或“STATEMENT”。
- NESTING_EVENT_LEVEL: 嵌套事件的层级。
- STATEMENT_ID: 语句ID。
- CPU_TIME: 语句执行消耗的CPU时间。
- MAX_CONTROLLED_MEMORY: 语句执行过程中使用的最大受控内存。
- MAX_TOTAL_MEMORY: 语句执行过程中使用的最大总内存。
- EXECUTION_ENGINE: 语句执行使用的引擎,例如“PRIMARY”或“SECONDARY”。
这些列提供了详细的语句执行信息,有助于分析和优化数据库性能。


events_statements_history_long
这个表是MySQL性能模式中的events_statements_history_long表,用于记录长时间运行的语句事件的执行历史。以下是表中每一列的含义:
- THREAD_ID: 执行语句的线程ID。
- EVENT_ID: 语句事件的唯一标识符。
- END_EVENT_ID: 语句事件结束的唯一标识符。
- EVENT_NAME: 语句事件的名称,例如“statement”或“stage”。
- SOURCE: 语句的来源,例如用户或程序。
- TIMER_START: 语句开始执行的时间戳。
- TIMER_END: 语句结束执行的时间戳。
- TIMER_WAIT: 语句等待的时间。
- LOCK_TIME: 语句等待锁的时间。
- SQL_TEXT: 执行的SQL语句文本。
- DIGEST: SQL语句的摘要信息,用于聚合相似的查询。
- DIGEST_TEXT: 摘要文本,提供摘要的详细信息。
- CURRENT_SCHEMA: 当前使用的数据库模式。
- OBJECT_TYPE: 对象类型,例如表或存储过程。
- OBJECT_SCHEMA: 对象所在的数据库模式。
- OBJECT_NAME: 对象的名称。
- OBJECT_INSTANCE_BEGIN: 对象实例的开始时间戳。
- MYSQL_ERRNO: 语句执行时返回的错误代码。
- RETURNED_SQLSTATE: 返回的SQL状态码。
- MESSAGE_TEXT: 错误或消息的文本描述。
- ERRORS: 语句执行过程中发生的错误数量。
- WARNINGS: 语句执行过程中产生的警告数量。
- ROWS_AFFECTED: 语句影响的行数。
- ROWS_SENT: 发送到客户端的行数。
- ROWS_EXAMINED: 语句检查的行数。
- CREATED_TMP_DISK_TABLES: 语句执行过程中创建的临时磁盘表数量。
- CREATED_TMP_TABLES: 语句执行过程中创建的临时表数量。
- SELECT_FULL_JOIN: 是否执行了全表连接。
- SELECT_FULL_RANGE_JOIN: 是否执行了全范围连接。
- SELECT_RANGE: 是否执行了范围扫描。
- SELECT_RANGE_CHECK: 是否执行了范围检查。
- SELECT_SCAN: 是否执行了全表扫描。
- SORT_MERGE_PASSES: 排序合并的遍历次数。
- SORT_RANGE: 是否执行了范围排序。
- SORT_ROWS: 排序的行数。
- SORT_SCAN: 是否执行了扫描排序。
- NO_INDEX_USED: 是否没有使用索引。
- NO_GOOD_INDEX_USED: 是否没有使用合适的索引。
- NESTING_EVENT_ID: 嵌套事件的ID。
- NESTING_EVENT_TYPE: 嵌套事件的类型,例如“TRANSACTION”或“STATEMENT”。
- NESTING_EVENT_LEVEL: 嵌套事件的层级。
- STATEMENT_ID: 语句ID。
- CPU_TIME: 语句执行消耗的CPU时间。
- MAX_CONTROLLED_MEMORY: 语句执行过程中使用的最大受控内存。
- MAX_TOTAL_MEMORY: 语句执行过程中使用的最大总内存。
- EXECUTION_ENGINE: 语句执行使用的引擎,例如“PRIMARY”或“SECONDARY”。
这些列提供了详细的语句执行信息,有助于分析和优化数据库性能。

events_statements_summary_by_account_by_event_name
这个表是MySQL性能模式中的events_statements_summary_by_account_by_event_name表,用于按账户和事件名称汇总语句事件的统计信息。以下是表中每一列的含义:
- USER: 执行语句的数据库用户。
- HOST: 执行语句的主机。
- EVENT_NAME: 语句事件的名称,例如“statement”或“stage”。
- COUNT_STAR: 该账户下该事件名称的语句执行总次数。
- SUM_TIMER_WAIT: 该账户下该事件名称的语句总等待时间。
- MIN_TIMER_WAIT: 该账户下该事件名称的语句最小等待时间。
- AVG_TIMER_WAIT: 该账户下该事件名称的语句平均等待时间。
- MAX_TIMER_WAIT: 该账户下该事件名称的语句最大等待时间。
- SUM_LOCK_TIME: 该账户下该事件名称的语句总锁等待时间。
- SUM_ERRORS: 该账户下该事件名称的语句执行过程中发生的总错误数。
- SUM_WARNINGS: 该账户下该事件名称的语句执行过程中产生的总警告数。
- SUM_ROWS_AFFECTED: 该账户下该事件名称的语句影响的总行数。
- SUM_ROWS_SENT: 该账户下该事件名称的语句发送到客户端的总行数。
- SUM_ROWS_EXAMINED: 该账户下该事件名称的语句检查的总行数。
- SUM_CREATED_TMP_DISK_TABLES: 该账户下该事件名称的语句创建的临时磁盘表总数量。
- SUM_CREATED_TMP_TABLES: 该账户下该事件名称的语句创建的临时表总数量。
- SUM_SELECT_FULL_JOIN: 该账户下该事件名称的语句执行的全表连接总次数。
- SUM_SELECT_FULL_RANGE_JOIN: 该账户下该事件名称的语句执行的全范围连接总次数。
- SUM_SELECT_RANGE: 该账户下该事件名称的语句执行的范围扫描总次数。
- SUM_SELECT_RANGE_CHECK: 该账户下该事件名称的语句执行的范围检查总次数。
- SUM_SELECT_SCAN: 该账户下该事件名称的语句执行的全表扫描总次数。
- SUM_SORT_MERGE_PASSES: 该账户下该事件名称的语句执行的排序合并遍历总次数。
- SUM_SORT_RANGE: 该账户下该事件名称的语句执行的范围排序总次数。
- SUM_SORT_ROWS: 该账户下该事件名称的语句排序的总行数。
- SUM_SORT_SCAN: 该账户下该事件名称的语句执行的扫描排序总次数。
- SUM_NO_INDEX_USED: 该账户下该事件名称的语句没有使用索引的总次数。
- SUM_NO_GOOD_INDEX_USED: 该账户下该事件名称的语句没有使用合适索引的总次数。
- SUM_NO_INDEX: 该账户下该事件名称的语句没有使用索引的总次数。
- SUM_NO_GOOD_INDEX: 该账户下该事件名称的语句没有使用合适索引的总次数。
- MAX_MEMORY_USED: 该账户下该事件名称的语句使用的最大内存。
- MAX_TOTAL_MEMORY: 该账户下该事件名称的语句使用的最大总内存。
- MAX_CONTROLLED_MEMORY: 该账户下该事件名称的语句使用的最大受控内存。
- COUNT_SECONDARY: 该账户下该事件名称的语句执行的次要事件总次数。
这些列提供了按账户和事件名称汇总的语句执行统计信息,有助于分析和优化数据库性能。表中还有一个唯一键UNIQUE KEY ACCOUNT ('USER', 'HOST', 'EVENT_NAME'),用于确保每个账户和事件名称的组合在表中是唯一的。


events_statements_summary_by_digest
这个表是MySQL性能模式中的events_statements_summary_by_digest表,用于按SQL摘要汇总语句事件的统计信息。以下是表中每一列的含义:
- SCHEMA_NAME: 语句执行时使用的数据库模式的名称。
- DIGEST: SQL语句的摘要信息,用于聚合相似的查询。
- DIGEST_TEXT: 摘要文本,提供摘要的详细信息。
- COUNT_STAR: 该摘要对应的语句执行总次数。
- SUM_TIMER_WAIT: 该摘要对应的语句总等待时间。
- MIN_TIMER_WAIT: 该摘要对应的语句最小等待时间。
- AVG_TIMER_WAIT: 该摘要对应的语句平均等待时间。
- MAX_TIMER_WAIT: 该摘要对应的语句最大等待时间。
- SUM_LOCK_TIME: 该摘要对应的语句总锁等待时间。
- SUM_ERRORS: 该摘要对应的语句执行过程中发生的总错误数。
- SUM_WARNINGS: 该摘要对应的语句执行过程中产生的总警告数。
- SUM_ROWS_AFFECTED: 该摘要对应的语句影响的总行数。
- SUM_ROWS_SENT: 该摘要对应的语句发送到客户端的总行数。
- SUM_ROWS_EXAMINED: 该摘要对应的语句检查的总行数。
- SUM_CREATED_TMP_DISK_TABLES: 该摘要对应的语句创建的临时磁盘表总数量。
- SUM_CREATED_TMP_TABLES: 该摘要对应的语句创建的临时表总数量。
- SUM_SELECT_FULL_JOIN: 该摘要对应的语句执行的全表连接总次数。
- SUM_SELECT_FULL_RANGE_JOIN: 该摘要对应的语句执行的全范围连接总次数。
- SUM_SELECT_RANGE: 该摘要对应的语句执行的范围扫描总次数。
- SUM_SELECT_RANGE_CHECK: 该摘要对应的语句执行的范围检查总次数。
- SUM_SELECT_SCAN: 该摘要对应的语句执行的全表扫描总次数。
- SUM_SORT_MERGE_PASSES: 该摘要对应的语句执行的排序合并遍历总次数。
- SUM_SORT_RANGE: 该摘要对应的语句执行的范围排序总次数。
- SUM_SORT_ROWS: 该摘要对应的语句排序的总行数。
- SUM_SORT_SCAN: 该摘要对应的语句执行的扫描排序总次数。
- SUM_NO_INDEX_USED: 该摘要对应的语句没有使用索引的总次数。
- SUM_NO_GOOD_INDEX_USED: 该摘要对应的语句没有使用合适索引的总次数。
- SUM_CPU_TIME: 该摘要对应的语句执行消耗的总CPU时间。
- MAX_CONTROLLED_MEMORY: 该摘要对应的语句执行过程中使用的最大受控内存。
- MAX_TOTAL_MEMORY: 该摘要对应的语句执行过程中使用的最大总内存。
- COUNT_SECONDARY: 该摘要对应的语句执行的次要事件总次数。
- FIRST_SEEN: 该摘要对应的语句首次出现的UTC时间戳。
- LAST_SEEN: 该摘要对应的语句最后出现的UTC时间戳。
- QUARTERS: 该摘要对应的语句出现的季度数。
- QUERY_SAMPLE_TEXT: 该摘要对应的语句样本文本。
- QUERY_SAMPLE_SEEN: 该摘要对应的语句样本首次出现的UTC时间戳。
- QUERY_SAMPLE_TIMER_WAIT: 该摘要对应的语句样本的等待时间。
这些列提供了按SQL摘要汇总的语句执行统计信息,有助于分析和优化数据库性能。表中还有一个唯一键UNIQUE KEY SCHEMA_NAME ('SCHEMA_NAME', 'DIGEST'),用于确保每个模式和摘要的组合在表中是唯一的。


events_statements_summary_by_host_by_event_name
这个表是MySQL性能模式中的events_statements_summary_by_host_by_event_name表,用于按主机和事件名称汇总语句事件的统计信息。以下是表中每一列的含义:
- HOST: 执行语句的主机名。
- EVENT_NAME: 语句事件的名称,例如“statement”或“stage”。
- COUNT_STAR: 该主机下该事件名称的语句执行总次数。
- SUM_TIMER_WAIT: 该主机下该事件名称的语句总等待时间。
- MIN_TIMER_WAIT: 该主机下该事件名称的语句最小等待时间。
- AVG_TIMER_WAIT: 该主机下该事件名称的语句平均等待时间。
- MAX_TIMER_WAIT: 该主机下该事件名称的语句最大等待时间。
- SUM_LOCK_TIME: 该主机下该事件名称的语句总锁等待时间。
- SUM_ERRORS: 该主机下该事件名称的语句执行过程中发生的总错误数。
- SUM_WARNINGS: 该主机下该事件名称的语句执行过程中产生的总警告数。
- SUM_ROWS_AFFECTED: 该主机下该事件名称的语句影响的总行数。
- SUM_ROWS_SENT: 该主机下该事件名称的语句发送到客户端的总行数。
- SUM_ROWS_EXAMINED: 该主机下该事件名称的语句检查的总行数。
- SUM_CREATED_TMP_DISK_TABLES: 该主机下该事件名称的语句创建的临时磁盘表总数量。
- SUM_CREATED_TMP_TABLES: 该主机下该事件名称的语句创建的临时表总数量。
- SUM_SELECT_FULL_JOIN: 该主机下该事件名称的语句执行的全表连接总次数。
- SUM_SELECT_FULL_RANGE_JOIN: 该主机下该事件名称的语句执行的全范围连接总次数。
- SUM_SELECT_RANGE: 该主机下该事件名称的语句执行的范围扫描总次数。
- SUM_SELECT_RANGE_CHECK: 该主机下该事件名称的语句执行的范围检查总次数。
- SUM_SELECT_SCAN: 该主机下该事件名称的语句执行的全表扫描总次数。
- SUM_SORT_MERGE_PASSES: 该主机下该事件名称的语句执行的排序合并遍历总次数。
- SUM_SORT_RANGE: 该主机下该事件名称的语句执行的范围排序总次数。
- SUM_SORT_ROWS: 该主机下该事件名称的语句排序的总行数。
- SUM_SORT_SCAN: 该主机下该事件名称的语句执行的扫描排序总次数。
- SUM_NO_INDEX_USED: 该主机下该事件名称的语句没有使用索引的总次数。
- SUM_NO_GOOD_INDEX_USED: 该主机下该事件名称的语句没有使用合适索引的总次数。
- MAX_MEMORY_USED: 该主机下该事件名称的语句使用的最大内存。
- MAX_TOTAL_MEMORY: 该主机下该事件名称的语句使用的最大总内存。
- COUNT_SECONDARY: 该主机下该事件名称的语句执行的次要事件总次数。
这些列提供了按主机和事件名称汇总的语句执行统计信息,有助于分析和优化数据库性能。表中还有一个唯一键UNIQUE KEY HOST ('HOST', 'EVENT_NAME'),用于确保每个主机和事件名称的组合在表中是唯一的。


events_statements_summary_by_program
这个表是MySQL性能模式中的events_statements_summary_by_program表,用于按程序(如存储过程、函数、触发器等)汇总语句事件的统计信息。以下是表中每一列的含义:
- OBJECT_TYPE: 对象类型,可以是EVENT、FUNCTION、PROCEDURE、TABLE或TRIGGER。
- OBJECT_SCHEMA: 对象所在的数据库模式的名称。
- OBJECT_NAME: 对象的名称。
- COUNT_STAR: 该程序对应的语句执行总次数。
- SUM_TIMER_WAIT: 该程序对应的语句总等待时间。
- MIN_TIMER_WAIT: 该程序对应的语句最小等待时间。
- AVG_TIMER_WAIT: 该程序对应的语句平均等待时间。
- MAX_TIMER_WAIT: 该程序对应的语句最大等待时间。
- COUNT_STATEMENTS: 该程序中语句的执行总次数。
- SUM_STATEMENTS_WAIT: 该程序中语句的总等待时间。
- MIN_STATEMENTS_WAIT: 该程序中语句的最小等待时间。
- AVG_STATEMENTS_WAIT: 该程序中语句的平均等待时间。
- MAX_STATEMENTS_WAIT: 该程序中语句的最大等待时间。
- SUM_LOCK_TIME: 该程序对应的语句总锁等待时间。
- SUM_ERRORS: 该程序对应的语句执行过程中发生的总错误数。
- SUM_WARNINGS: 该程序对应的语句执行过程中产生的总警告数。
- SUM_ROWS_AFFECTED: 该程序对应的语句影响的总行数。
- SUM_ROWS_SENT: 该程序对应的语句发送到客户端的总行数。
- SUM_ROWS_EXAMINED: 该程序对应的语句检查的总行数。
- SUM_CREATED_TMP_DISK_TABLES: 该程序对应的语句创建的临时磁盘表总数量。
- SUM_CREATED_TMP_TABLES: 该程序对应的语句创建的临时表总数量。
- SUM_SELECT_FULL_JOIN: 该程序对应的语句执行的全表连接总次数。
- SUM_SELECT_FULL_RANGE_JOIN: 该程序对应的语句执行的全范围连接总次数。
- SUM_SELECT_RANGE: 该程序对应的语句执行的范围扫描总次数。
- SUM_SELECT_RANGE_CHECK: 该程序对应的语句执行的范围检查总次数。
- SUM_SELECT_SCAN: 该程序对应的语句执行的全表扫描总次数。
- SUM_SORT_MERGE_PASSES: 该程序对应的语句执行的排序合并遍历总次数。
- SUM_SORT_RANGE: 该程序对应的语句执行的范围排序总次数。
- SUM_SORT_ROWS: 该程序对应的语句排序的总行数。
- SUM_SORT_SCAN: 该程序对应的语句执行的扫描排序总次数。
- SUM_NO_INDEX_USED: 该程序对应的语句没有使用索引的总次数。
- SUM_NO_GOOD_INDEX_USED: 该程序对应的语句没有使用合适索引的总次数。
- MAX_MEMORY_USED: 该程序对应的语句使用的最大内存。
- MAX_TOTAL_MEMORY: 该程序对应的语句使用的最大总内存。
- COUNT_SECONDARY: 该程序对应的语句执行的次要事件总次数。
这些列提供了按程序汇总的语句执行统计信息,有助于分析和优化数据库性能。表中还有一个主键PRIMARY KEY ('OBJECT_TYPE', 'OBJECT_SCHEMA', 'OBJECT_NAME'),用于确保每个程序在表中是唯一的。


events_statements_summary_by_thread_by_event_name
这个表是MySQL性能模式中的events_statements_summary_by_thread_by_event_name表,用于按线程和事件名称汇总语句事件的统计信息。以下是表中每一列的含义:
- THREAD_ID: 执行语句的线程ID。
- EVENT_NAME: 语句事件的名称,例如“statement”或“stage”。
- COUNT_STAR: 该线程下该事件名称的语句执行总次数。
- SUM_TIMER_WAIT: 该线程下该事件名称的语句总等待时间。
- MIN_TIMER_WAIT: 该线程下该事件名称的语句最小等待时间。
- AVG_TIMER_WAIT: 该线程下该事件名称的语句平均等待时间。
- MAX_TIMER_WAIT: 该线程下该事件名称的语句最大等待时间。
- SUM_LOCK_TIME: 该线程下该事件名称的语句总锁等待时间。
- SUM_ERRORS: 该线程下该事件名称的语句执行过程中发生的总错误数。
- SUM_WARNINGS: 该线程下该事件名称的语句执行过程中产生的总警告数。
- SUM_ROWS_AFFECTED: 该线程下该事件名称的语句影响的总行数。
- SUM_ROWS_SENT: 该线程下该事件名称的语句发送到客户端的总行数。
- SUM_ROWS_EXAMINED: 该线程下该事件名称的语句检查的总行数。
- SUM_CREATED_TMP_DISK_TABLES: 该线程下该事件名称的语句创建的临时磁盘表总数量。
- SUM_CREATED_TMP_TABLES: 该线程下该事件名称的语句创建的临时表总数量。
- SUM_SELECT_FULL_JOIN: 该线程下该事件名称的语句执行的全表连接总次数。
- SUM_SELECT_FULL_RANGE_JOIN: 该线程下该事件名称的语句执行的全范围连接总次数。
- SUM_SELECT_RANGE: 该线程下该事件名称的语句执行的范围扫描总次数。
- SUM_SELECT_RANGE_CHECK: 该线程下该事件名称的语句执行的范围检查总次数。
- SUM_SELECT_SCAN: 该线程下该事件名称的语句执行的全表扫描总次数。
- SUM_SORT_MERGE_PASSES: 该线程下该事件名称的语句执行的排序合并遍历总次数。
- SUM_SORT_RANGE: 该线程下该事件名称的语句执行的范围排序总次数。
- SUM_SORT_ROWS: 该线程下该事件名称的语句排序的总行数。
- SUM_SORT_SCAN: 该线程下该事件名称的语句执行的扫描排序总次数。
- SUM_NO_INDEX_USED: 该线程下该事件名称的语句没有使用索引的总次数。
- SUM_NO_GOOD_INDEX_USED: 该线程下该事件名称的语句没有使用合适索引的总次数。
- MAX_MEMORY_USED: 该线程下该事件名称的语句使用的最大内存。
- MAX_TOTAL_MEMORY: 该线程下该事件名称的语句使用的最大总内存。
- COUNT_SECONDARY: 该线程下该事件名称的语句执行的次要事件总次数。
这些列提供了按线程和事件名称汇总的语句执行统计信息,有助于分析和优化数据库性能。表中还有一个主键PRIMARY KEY ('THREAD_ID', 'EVENT_NAME'),用于确保每个线程和事件名称的组合在表中是唯一的。


events_statements_summary_by_user_by_event_name
这个表是MySQL性能模式中的events_statements_summary_by_user_by_event_name表,用于按用户和事件名称汇总语句事件的统计信息。以下是表中每一列的含义:
- USER: 执行语句的数据库用户名。
- EVENT_NAME: 语句事件的名称,例如“statement”或“stage”。
- COUNT_STAR: 该用户下该事件名称的语句执行总次数。
- SUM_TIMER_WAIT: 该用户下该事件名称的语句总等待时间。
- MIN_TIMER_WAIT: 该用户下该事件名称的语句最小等待时间。
- AVG_TIMER_WAIT: 该用户下该事件名称的语句平均等待时间。
- MAX_TIMER_WAIT: 该用户下该事件名称的语句最大等待时间。
- SUM_LOCK_TIME: 该用户下该事件名称的语句总锁等待时间。
- SUM_ERRORS: 该用户下该事件名称的语句执行过程中发生的总错误数。
- SUM_WARNINGS: 该用户下该事件名称的语句执行过程中产生的总警告数。
- SUM_ROWS_AFFECTED: 该用户下该事件名称的语句影响的总行数。
- SUM_ROWS_SENT: 该用户下该事件名称的语句发送到客户端的总行数。
- SUM_ROWS_EXAMINED: 该用户下该事件名称的语句检查的总行数。
- SUM_CREATED_TMP_DISK_TABLES: 该用户下该事件名称的语句创建的临时磁盘表总数量。
- SUM_CREATED_TMP_TABLES: 该用户下该事件名称的语句创建的临时表总数量。
- SUM_SELECT_FULL_JOIN: 该用户下该事件名称的语句执行的全表连接总次数。
- SUM_SELECT_FULL_RANGE_JOIN: 该用户下该事件名称的语句执行的全范围连接总次数。
- SUM_SELECT_RANGE: 该用户下该事件名称的语句执行的范围扫描总次数。
- SUM_SELECT_RANGE_CHECK: 该用户下该事件名称的语句执行的范围检查总次数。
- SUM_SELECT_SCAN: 该用户下该事件名称的语句执行的全表扫描总次数。
- SUM_SORT_MERGE_PASSES: 该用户下该事件名称的语句执行的排序合并遍历总次数。
- SUM_SORT_RANGE: 该用户下该事件名称的语句执行的范围排序总次数。
- SUM_SORT_ROWS: 该用户下该事件名称的语句排序的总行数。
- SUM_SORT_SCAN: 该用户下该事件名称的语句执行的扫描排序总次数。
- SUM_NO_INDEX_USED: 该用户下该事件名称的语句没有使用索引的总次数。
- SUM_NO_GOOD_INDEX_USED: 该用户下该事件名称的语句没有使用合适索引的总次数。
- MAX_MEMORY_USED: 该用户下该事件名称的语句使用的最大内存。
- MAX_TOTAL_MEMORY: 该用户下该事件名称的语句使用的最大总内存。
- COUNT_SECONDARY: 该用户下该事件名称的语句执行的次要事件总次数。
这些列提供了按用户和事件名称汇总的语句执行统计信息,有助于分析和优化数据库性能。表中还有一个唯一键UNIQUE KEY USER ('USER', 'EVENT_NAME'),用于确保每个用户和事件名称的组合在表中是唯一的。


events_statements_summary_global_by_event_name
这个表是MySQL性能模式中的events_statements_summary_global_by_event_name表,用于按事件名称汇总全局语句事件的统计信息。以下是表中每一列的含义:
- EVENT_NAME: 语句事件的名称,例如“statement”或“stage”。
- COUNT_STAR: 全局该事件名称的语句执行总次数。
- SUM_TIMER_WAIT: 全局该事件名称的语句总等待时间。
- MIN_TIMER_WAIT: 全局该事件名称的语句最小等待时间。
- AVG_TIMER_WAIT: 全局该事件名称的语句平均等待时间。
- MAX_TIMER_WAIT: 全局该事件名称的语句最大等待时间。
- SUM_LOCK_TIME: 全局该事件名称的语句总锁等待时间。
- SUM_ERRORS: 全局该事件名称的语句执行过程中发生的总错误数。
- SUM_WARNINGS: 全局该事件名称的语句执行过程中产生的总警告数。
- SUM_ROWS_AFFECTED: 全局该事件名称的语句影响的总行数。
- SUM_ROWS_SENT: 全局该事件名称的语句发送到客户端的总行数。
- SUM_ROWS_EXAMINED: 全局该事件名称的语句检查的总行数。
- SUM_CREATED_TMP_DISK_TABLES: 全局该事件名称的语句创建的临时磁盘表总数量。
- SUM_CREATED_TMP_TABLES: 全局该事件名称的语句创建的临时表总数量。
- SUM_SELECT_FULL_JOIN: 全局该事件名称的语句执行的全表连接总次数。
- SUM_SELECT_FULL_RANGE_JOIN: 全局该事件名称的语句执行的全范围连接总次数。
- SUM_SELECT_RANGE: 全局该事件名称的语句执行的范围扫描总次数。
- SUM_SELECT_RANGE_CHECK: 全局该事件名称的语句执行的范围检查总次数。
- SUM_SELECT_SCAN: 全局该事件名称的语句执行的全表扫描总次数。
- SUM_SORT_MERGE_PASSES: 全局该事件名称的语句执行的排序合并遍历总次数。
- SUM_SORT_RANGE: 全局该事件名称的语句执行的范围排序总次数。
- SUM_SORT_ROWS: 全局该事件名称的语句排序的总行数。
- SUM_SORT_SCAN: 全局该事件名称的语句执行的扫描排序总次数。
- SUM_NO_INDEX_USED: 全局该事件名称的语句没有使用索引的总次数。
- SUM_NO_GOOD_INDEX_USED: 全局该事件名称的语句没有使用合适索引的总次数。
- MAX_MEMORY_USED: 全局该事件名称的语句使用的最大内存。
- MAX_TOTAL_MEMORY: 全局该事件名称的语句使用的最大总内存。
- COUNT_SECONDARY: 全局该事件名称的语句执行的次要事件总次数。
这些列提供了按事件名称汇总的全局语句执行统计信息,有助于分析和优化数据库性能。表中还有一个主键PRIMARY KEY ('EVENT_NAME'),用于确保每个事件名称在表中是唯一的。


events_transactions_current
这个表是MySQL性能模式中的events_transactions_current表,用于记录当前活跃的事务信息。以下是表中每一列的含义:
- THREAD_ID: 事务所属线程的ID。
- EVENT_ID: 事务事件的唯一标识符。
- END_EVENT_ID: 事务结束事件的唯一标识符。
- EVENT_NAME: 事务事件的名称。
- STATE: 事务的状态,可以是
ACTIVE(活跃)、COMMITTED(已提交)或ROLLED BACK(已回滚)。 - TRX_ID: 事务的ID。
- GTID: 全局事务标识符(如果启用了GTID)。
- XID_FORMAT_ID: XID格式的ID(如果事务使用了XID)。
- XID: XID事务标识符(如果事务使用了XID)。
- XID_STATE: XID的状态。
- SOURCE: 事务的来源信息。
- TIMER_START: 事务开始的时间戳。
- TIMER_END: 事务结束的时间戳。
- TIMER_WAIT: 事务等待的时间。
- ACCESS_MODE: 事务的访问模式,可以是
READ ONLY(只读)或READ WRITE(读写)。 - ISOLATION_LEVEL: 事务的隔离级别。
- AUTOCOMMIT: 指示事务是否为自动提交,可以是
YES或NO。 - NUMBER OF SAVEPOINTS: 事务中设置的保存点数量。
- NUMBER OF ROLLBACK TO SAVEPOINT: 事务中回滚到保存点的次数。
- NUMBER OF RELEASE SAVEPOINT: 事务中释放保存点的次数。
- OBJECT_SCHEMA: 事务操作的对象所在的数据库模式。
- OBJECT_NAME: 事务操作的对象名称。
- NESTING_EVENT_ID: 嵌套事件的ID(如果有)。
- NESTING_EVENT_TYPE: 嵌套事件的类型,可以是
TRANSACTION、STATEMENT、STAGE或WAIT。
这些列提供了关于当前活跃事务的详细信息,有助于监控和分析数据库事务的性能和行为。表中还有一个主键PRIMARY KEY ('THREAD_ID', 'EVENT_ID'),用于确保每个线程和事件ID的组合在表中是唯一的。


events_transactions_history
这个表是MySQL性能模式中的events_transactions_history表,用于记录事务事件的历史信息。以下是表中每一列的含义:
- THREAD_ID: 执行事务的线程ID。
- EVENT_ID: 事务事件的唯一标识符。
- END_EVENT_ID: 事务结束事件的唯一标识符。
- EVENT_NAME: 事务事件的名称。
- STATE: 事务的状态,可以是
ACTIVE(活跃)、COMMITTED(已提交)或ROLLED BACK(已回滚)。 - TRX_ID: 事务的ID。
- GTID: 全局事务标识符(如果启用了GTID)。
- XID_FORMAT_ID: XID格式的ID(如果事务使用了XID)。
- XID: XID事务标识符(如果事务使用了XID)。
- XID_STATE: XID的状态。
- SOURCE: 事务的来源信息。
- TIMER_START: 事务开始的时间戳。
- TIMER_END: 事务结束的时间戳。
- TIMER_WAIT: 事务等待的时间。
- ACCESS_MODE: 事务的访问模式,可以是
READ ONLY(只读)或READ WRITE(读写)。 - ISOLATION_LEVEL: 事务的隔离级别。
- AUTOCOMMIT: 指示事务是否为自动提交,可以是
YES或NO。 - NUMBER OF SAVEPOINTS: 事务中设置的保存点数量。
- NUMBER OF ROLLBACK TO SAVEPOINT: 事务中回滚到保存点的次数。
- NUMBER OF RELEASE SAVEPOINT: 事务中释放保存点的次数。
- OBJECT_INSTANCE_BEGIN: 事务开始时对象实例的ID。
- NESTING_EVENT_ID: 嵌套事件的ID(如果有)。
- NESTING_EVENT_TYPE: 嵌套事件的类型,可以是
TRANSACTION、STATEMENT、STAGE或WAIT。
这些列提供了关于历史事务的详细信息,有助于分析和优化数据库事务的性能和行为。表中还有一个主键PRIMARY KEY ('THREAD_ID', 'EVENT_ID'),用于确保每个线程和事件ID的组合在表中是唯一的。


events_transactions_history_long
这个表是MySQL性能模式中的events_transactions_history_long表,用于记录长时间运行的事务事件的历史信息。以下是表中每一列的含义:
- THREAD_ID: 执行事务的线程ID。
- EVENT_ID: 事务事件的唯一标识符。
- END_EVENT_ID: 事务结束事件的唯一标识符。
- EVENT_NAME: 事务事件的名称。
- STATE: 事务的状态,可以是
ACTIVE(活跃)、COMMITTED(已提交)或ROLLED BACK(已回滚)。 - TRX_ID: 事务的ID。
- GTID: 全局事务标识符(如果启用了GTID)。
- XID_FORMAT_ID: XID格式的ID(如果事务使用了XID)。
- XID: XID事务标识符(如果事务使用了XID)。
- XID_STATE: XID的状态。
- SOURCE: 事务的来源信息。
- TIMER_START: 事务开始的时间戳。
- TIMER_END: 事务结束的时间戳。
- TIMER_WAIT: 事务等待的时间。
- ACCESS_MODE: 事务的访问模式,可以是
READ ONLY(只读)或READ WRITE(读写)。 - ISOLATION_LEVEL: 事务的隔离级别。
- AUTOCOMMIT: 指示事务是否为自动提交,可以是
YES或NO。 - NUMBER OF SAVEPOINTS: 事务中设置的保存点数量。
- NUMBER OF ROLLBACK TO SAVEPOINT: 事务中回滚到保存点的次数。
- NUMBER OF RELEASE SAVEPOINT: 事务中释放保存点的次数。
- OBJECT_INSTANCE_BEGIN: 事务开始时对象实例的ID。
- NESTING_EVENT_ID: 嵌套事件的ID(如果有)。
- NESTING_EVENT_TYPE: 嵌套事件的类型,可以是
TRANSACTION、STATEMENT、STAGE或WAIT。
这些列提供了关于历史事务的详细信息,有助于分析和优化数据库事务的性能和行为。表中还有一个主键PRIMARY KEY ('THREAD_ID', 'EVENT_ID'),用于确保每个线程和事件ID的组合在表中是唯一的。

events_transactions_summary_by_account_by_event_name
这个表是MySQL性能模式中的events_transactions_summary_by_account_by_event_name表,用于按账户和事件名称汇总事务事件的统计信息。以下是表中每一列的含义:
- USER: 执行事务的数据库用户名。
- HOST: 执行事务的主机名或IP地址。
- EVENT_NAME: 事务事件的名称。
- COUNT_STAR: 该账户下该事件名称的事务执行总次数。
- SUM_TIMER_WAIT: 该账户下该事件名称的事务总等待时间。
- MIN_TIMER_WAIT: 该账户下该事件名称的事务最小等待时间。
- AVG_TIMER_WAIT: 该账户下该事件名称的事务平均等待时间。
- MAX_TIMER_WAIT: 该账户下该事件名称的事务最大等待时间。
- COUNT_READ_WRITE: 该账户下该事件名称的读写事务执行次数。
- SUM_TIMER_READ_WRITE: 该账户下该事件名称的读写事务总等待时间。
- MIN_TIMER_READ_WRITE: 该账户下该事件名称的读写事务最小等待时间。
- AVG_TIMER_READ_WRITE: 该账户下该事件名称的读写事务平均等待时间。
- MAX_TIMER_READ_WRITE: 该账户下该事件名称的读写事务最大等待时间。
- COUNT_READ_ONLY: 该账户下该事件名称的只读事务执行次数。
- SUM_TIMER_READ_ONLY: 该账户下该事件名称的只读事务总等待时间。
- MIN_TIMER_READ_ONLY: 该账户下该事件名称的只读事务最小等待时间。
- AVG_TIMER_READ_ONLY: 该账户下该事件名称的只读事务平均等待时间。
- MAX_TIMER_READ_ONLY: 该账户下该事件名称的只读事务最大等待时间。
这些列提供了按账户和事件名称汇总的事务执行统计信息,有助于分析和优化数据库性能。表中还有一个唯一键UNIQUE KEY ACCOUNT ('USER', 'HOST', 'EVENT_NAME'),用于确保每个账户、主机和事件名称的组合在表中是唯一的。


events_transactions_summary_by_host_by_event_name
这个表是MySQL性能模式中的events_transactions_summary_by_host_by_event_name表,用于按主机和事件名称汇总事务事件的统计信息。以下是表中每一列的含义:
- HOST: 执行事务的主机名或IP地址。
- EVENT_NAME: 事务事件的名称。
- COUNT_STAR: 该主机下该事件名称的事务执行总次数。
- SUM_TIMER_WAIT: 该主机下该事件名称的事务总等待时间。
- MIN_TIMER_WAIT: 该主机下该事件名称的事务最小等待时间。
- AVG_TIMER_WAIT: 该主机下该事件名称的事务平均等待时间。
- MAX_TIMER_WAIT: 该主机下该事件名称的事务最大等待时间。
- COUNT_READ_WRITE: 该主机下该事件名称的读写事务执行次数。
- SUM_TIMER_READ_WRITE: 该主机下该事件名称的读写事务总等待时间。
- MIN_TIMER_READ_WRITE: 该主机下该事件名称的读写事务最小等待时间。
- AVG_TIMER_READ_WRITE: 该主机下该事件名称的读写事务平均等待时间。
- MAX_TIMER_READ_WRITE: 该主机下该事件名称的读写事务最大等待时间。
- COUNT_READ_ONLY: 该主机下该事件名称的只读事务执行次数。
- SUM_TIMER_READ_ONLY: 该主机下该事件名称的只读事务总等待时间。
- MIN_TIMER_READ_ONLY: 该主机下该事件名称的只读事务最小等待时间。
- AVG_TIMER_READ_ONLY: 该主机下该事件名称的只读事务平均等待时间。
- MAX_TIMER_READ_ONLY: 该主机下该事件名称的只读事务最大等待时间。
这些列提供了按主机和事件名称汇总的事务执行统计信息,有助于分析和优化数据库性能。表中还有一个唯一键UNIQUE KEY ('HOST', 'EVENT_NAME'),用于确保每个主机和事件名称的组合在表中是唯一的。

events_transactions_summary_by_thread_by_event_name
这个表是MySQL性能模式中的events_transactions_summary_by_thread_by_event_name表,用于按线程和事件名称汇总事务事件的统计信息。以下是表中每一列的含义:
- THREAD_ID: 执行事务的线程ID。
- EVENT_NAME: 事务事件的名称。
- COUNT_STAR: 该线程下该事件名称的事务执行总次数。
- SUM_TIMER_WAIT: 该线程下该事件名称的事务总等待时间。
- MIN_TIMER_WAIT: 该线程下该事件名称的事务最小等待时间。
- AVG_TIMER_WAIT: 该线程下该事件名称的事务平均等待时间。
- MAX_TIMER_WAIT: 该线程下该事件名称的事务最大等待时间。
- COUNT_READ_WRITE: 该线程下该事件名称的读写事务执行次数。
- SUM_TIMER_READ_WRITE: 该线程下该事件名称的读写事务总等待时间。
- MIN_TIMER_READ_WRITE: 该线程下该事件名称的读写事务最小等待时间。
- AVG_TIMER_READ_WRITE: 该线程下该事件名称的读写事务平均等待时间。
- MAX_TIMER_READ_WRITE: 该线程下该事件名称的读写事务最大等待时间。
- COUNT_READ_ONLY: 该线程下该事件名称的只读事务执行次数。
- SUM_TIMER_READ_ONLY: 该线程下该事件名称的只读事务总等待时间。
- MIN_TIMER_READ_ONLY: 该线程下该事件名称的只读事务最小等待时间。
- AVG_TIMER_READ_ONLY: 该线程下该事件名称的只读事务平均等待时间。
- MAX_TIMER_READ_ONLY: 该线程下该事件名称的只读事务最大等待时间。
这些列提供了按线程和事件名称汇总的事务执行统计信息,有助于分析和优化数据库性能。表中还有一个主键PRIMARY KEY ('THREAD_ID', 'EVENT_NAME'),用于确保每个线程和事件名称的组合在表中是唯一的。

events_transactions_summary_by_user_by_event_name
这个表是MySQL性能模式中的events_transactions_summary_by_user_by_event_name表,用于按用户和事件名称汇总事务事件的统计信息。以下是表中每一列的含义:
- USER: 执行事务的数据库用户名。
- EVENT_NAME: 事务事件的名称。
- COUNT_STAR: 该用户下该事件名称的事务执行总次数。
- SUM_TIMER_WAIT: 该用户下该事件名称的事务总等待时间。
- MIN_TIMER_WAIT: 该用户下该事件名称的事务最小等待时间。
- AVG_TIMER_WAIT: 该用户下该事件名称的事务平均等待时间。
- MAX_TIMER_WAIT: 该用户下该事件名称的事务最大等待时间。
- COUNT_READ_WRITE: 该用户下该事件名称的读写事务执行次数。
- SUM_TIMER_READ_WRITE: 该用户下该事件名称的读写事务总等待时间。
- MIN_TIMER_READ_WRITE: 该用户下该事件名称的读写事务最小等待时间。
- AVG_TIMER_READ_WRITE: 该用户下该事件名称的读写事务平均等待时间。
- MAX_TIMER_READ_WRITE: 该用户下该事件名称的读写事务最大等待时间。
- COUNT_READ_ONLY: 该用户下该事件名称的只读事务执行次数。
- SUM_TIMER_READ_ONLY: 该用户下该事件名称的只读事务总等待时间。
- MIN_TIMER_READ_ONLY: 该用户下该事件名称的只读事务最小等待时间。
- AVG_TIMER_READ_ONLY: 该用户下该事件名称的只读事务平均等待时间。
- MAX_TIMER_READ_ONLY: 该用户下该事件名称的只读事务最大等待时间。
这些列提供了按用户和事件名称汇总的事务执行统计信息,有助于分析和优化数据库性能。表中还有一个唯一键UNIQUE KEY ('USER', 'EVENT_NAME'),用于确保每个用户和事件名称的组合在表中是唯一的。

events_transactions_summary_global_by_event_name
这个表名为 events_transactions_summary_global_by_event_name,是 MySQL Performance Schema 中的一个表,用于汇总事务事件的统计信息。以下是表中每一列的含义:
- EVENT_NAME: 事务事件的名称,表示事务的类型或名称。
- COUNT_STAR: 事务事件的总次数,即该事件被触发的总次数。
- SUM_TIMER_WAIT: 所有事务事件的总等待时间,以毫秒为单位。
- MIN_TIMER_WAIT: 单个事务事件的最小等待时间,以毫秒为单位。
- MAX_TIMER_WAIT: 单个事务事件的最大等待时间,以毫秒为单位。
- COUNT_READ_WRITE: 读和写操作的总次数。
- SUM_TIMER_READ_WRITE: 所有读和写操作的总时间,以毫秒为单位。
- MIN_TIMER_READ_WRITE: 单个读和写操作的最小时间,以毫秒为单位。
- AVG_TIMER_READ_WRITE: 单个读和写操作的平均时间,以毫秒为单位。
- MAX_TIMER_READ_WRITE: 单个读和写操作的最大时间,以毫秒为单位。
- COUNT_READ_ONLY: 只读操作的总次数。
- SUM_TIMER_READ_ONLY: 所有只读操作的总时间,以毫秒为单位。
- MIN_TIMER_READ_ONLY: 单个只读操作的最小时间,以毫秒为单位。
- AVG_TIMER_READ_ONLY: 单个只读操作的平均时间,以毫秒为单位。
- MAX_TIMER_READ_ONLY: 单个只读操作的最大时间,以毫秒为单位。
这个表通过汇总事务事件的统计信息,帮助数据库管理员分析和优化数据库性能。

events_waits_current
这个表名为 events_waits_current,是 MySQL Performance Schema 中的一个表,用于记录当前正在等待的事件的详细信息。以下是表中每一列的含义:
- THREAD_ID: 线程的唯一标识符,表示正在执行的线程。
- EVENT_ID: 事件的唯一标识符,表示正在等待的事件。
- END_EVENT_ID: 事件结束的唯一标识符,表示等待事件的结束。
- EVENT_NAME: 等待事件的名称,表示正在等待的事件类型。
- SOURCE: 事件的来源,表示事件的来源信息。
- TIMER_START: 等待事件开始的时间戳,表示等待开始的时间。
- TIMER_END: 等待事件结束的时间戳,表示等待结束的时间。
- TIMER_WAIT: 等待事件的总时间,以毫秒为单位,表示等待的总时间。
- SPINS: 等待事件的自旋次数,表示线程在等待过程中自旋的次数。
- OBJECT_SCHEMA: 对象的模式名称,表示等待的对象所在的数据库模式。
- OBJECT_NAME: 对象的名称,表示正在等待的对象名称。
- INDEX_NAME: 索引的名称,表示正在等待的索引名称。
- OBJECT_TYPE: 对象的类型,表示正在等待的对象类型。
- OBJECT_INSTANCE_BEGIN: 对象实例的开始地址,表示对象实例的内存地址。
- NESTING_EVENT_ID: 嵌套事件的唯一标识符,表示嵌套的等待事件。
- NESTING_EVENT_TYPE: 嵌套事件的类型,表示嵌套的等待事件类型,可以是
TRANSACTION、STATEMENT、STAGE或WAIT。 - OPERATION: 操作的名称,表示正在执行的操作。
- NUMBER_OF_BYTES: 字节数,表示操作涉及的字节数。
- FLAGS: 标志,表示事件的附加信息或标志。
这个表通过记录当前正在等待的事件的详细信息,帮助数据库管理员分析和优化数据库性能,特别是了解线程等待的原因和等待时间。

events_waits_history
这个表名为 events_waits_history,是 MySQL Performance Schema 中的一个表,用于记录线程等待事件的历史信息。以下是表中每一列的含义:
- THREAD_ID: 线程的唯一标识符,表示执行等待操作的线程。
- EVENT_ID: 事件的唯一标识符,表示具体的等待事件。
- END_EVENT_ID: 事件结束的唯一标识符,表示等待事件结束的标识。
- EVENT_NAME: 等待事件的名称,表示正在等待的事件类型。
- SOURCE: 事件的来源,表示事件的来源信息。
- TIMER_START: 等待事件开始的时间戳,表示等待开始的时间。
- TIMER_END: 等待事件结束的时间戳,表示等待结束的时间。
- TIMER_WAIT: 等待事件的总时间,以毫秒为单位,表示等待的总时间。
- SPINS: 等待事件的自旋次数,表示线程在等待过程中自旋的次数。
- OBJECT_SCHEMA: 对象的模式名称,表示等待的对象所在的数据库模式。
- OBJECT_NAME: 对象的名称,表示正在等待的对象名称。
- INDEX_NAME: 索引的名称,表示正在等待的索引名称。
- OBJECT_TYPE: 对象的类型,表示正在等待的对象类型。
- OBJECT_INSTANCE_BEGIN: 对象实例的开始地址,表示对象实例的内存地址。
- NESTING_EVENT_ID: 嵌套事件的唯一标识符,表示嵌套的等待事件。
- NESTING_EVENT_TYPE: 嵌套事件的类型,表示嵌套的等待事件类型,可以是
TRANSACTION、STATEMENT、STAGE或WAIT。 - OPERATION: 操作的名称,表示正在执行的操作。
- NUMBER_OF_BYTES: 字节数,表示操作涉及的字节数。
- FLAGS: 标志,表示事件的附加信息或标志。
这个表通过记录线程等待事件的历史信息,帮助数据库管理员分析和优化数据库性能,特别是了解线程等待的原因和等待时间。

events_waits_history_long
这个表名为 events_waits_history_long,是 MySQL Performance Schema 中的一个表,用于记录长时间运行的等待事件的历史信息。以下是表中每一列的含义:
- THREAD_ID: 线程的唯一标识符,表示执行等待操作的线程。
- EVENT_ID: 事件的唯一标识符,表示具体的等待事件。
- END_EVENT_ID: 事件结束的唯一标识符,表示等待事件结束的标识。
- EVENT_NAME: 等待事件的名称,表示正在等待的事件类型。
- SOURCE: 事件的来源,表示事件的来源信息。
- TIMER_START: 等待事件开始的时间戳,表示等待开始的时间。
- TIMER_END: 等待事件结束的时间戳,表示等待结束的时间。
- TIMER_WAIT: 等待事件的总时间,以毫秒为单位,表示等待的总时间。
- SPINS: 等待事件的自旋次数,表示线程在等待过程中自旋的次数。
- OBJECT_SCHEMA: 对象的模式名称,表示等待的对象所在的数据库模式。
- OBJECT_NAME: 对象的名称,表示正在等待的对象名称。
- INDEX_NAME: 索引的名称,表示正在等待的索引名称。
- OBJECT_TYPE: 对象的类型,表示正在等待的对象类型。
- OBJECT_INSTANCE_BEGIN: 对象实例的开始地址,表示对象实例的内存地址。
- NESTING_EVENT_ID: 嵌套事件的唯一标识符,表示嵌套的等待事件。
- NESTING_EVENT_TYPE: 嵌套事件的类型,表示嵌套的等待事件类型,可以是
TRANSACTION、STATEMENT、STAGE或WAIT。 - OPERATION: 操作的名称,表示正在执行的操作。
- NUMBER_OF_BYTES: 字节数,表示操作涉及的字节数。
- FLAGS: 标志,表示事件的附加信息或标志。
这个表通过记录长时间运行的等待事件的历史信息,帮助数据库管理员分析和优化数据库性能,特别是了解线程等待的原因和等待时间。与 events_waits_history 表相比,这个表可能包含更多详细信息,或者用于存储更长时间范围内的数据。

events_waits_summary_by_account_by_event_name
这个表名为 events_waits_summary_by_account_by_event_name,是 MySQL Performance Schema 中的一个表,用于按账户和事件名称汇总等待事件的统计信息。以下是表中每一列的含义:
- USER: 用户名,表示执行等待操作的数据库用户。
- HOST: 主机名,表示执行等待操作的客户端主机。
- EVENT_NAME: 等待事件的名称,表示正在等待的事件类型。
- COUNT_STAR: 事务事件的总次数,即该事件被触发的总次数。
- SUM_TIMER_WAIT: 所有事务事件的总等待时间,以毫秒为单位。
- MIN_TIMER_WAIT: 单个事务事件的最小等待时间,以毫秒为单位。
- AVG_TIMER_WAIT: 单个事务事件的平均等待时间,以毫秒为单位。
- MAX_TIMER_WAIT: 单个事务事件的最大等待时间,以毫秒为单位。
这个表通过汇总按账户和事件名称的等待事件统计信息,帮助数据库管理员分析和优化数据库性能,特别是了解不同用户和主机上的等待事件情况。通过这些信息,管理员可以识别出性能瓶颈和优化点。

events_waits_summary_by_host_by_event_name
这个表名为 events_waits_summary_by_host_by_event_name,是 MySQL Performance Schema 中的一个表,用于按主机和事件名称汇总等待事件的统计信息。以下是表中每一列的含义:
- HOST: 主机名,表示执行等待操作的客户端主机。
- EVENT_NAME: 等待事件的名称,表示正在等待的事件类型。
- COUNT_STAR: 事务事件的总次数,即该事件被触发的总次数。
- SUM_TIMER_WAIT: 所有事务事件的总等待时间,以毫秒为单位。
- MIN_TIMER_WAIT: 单个事务事件的最小等待时间,以毫秒为单位。
- AVG_TIMER_WAIT: 单个事务事件的平均等待时间,以毫秒为单位。
- MAX_TIMER_WAIT: 单个事务事件的最大等待时间,以毫秒为单位。
这个表通过汇总按主机和事件名称的等待事件统计信息,帮助数据库管理员分析和优化数据库性能,特别是了解不同主机上的等待事件情况。通过这些信息,管理员可以识别出性能瓶颈和优化点,例如,如果某个主机的等待时间特别长,可能需要检查该主机的网络连接或数据库配置。

events_waits_summary_by_instance
这个表名为 events_waits_summary_by_instance,是 MySQL Performance Schema 中的一个表,用于按实例汇总等待事件的统计信息。以下是表中每一列的含义:
- EVENT_NAME: 等待事件的名称,表示正在等待的事件类型。
- OBJECT_INSTANCE_BEGIN: 对象实例的开始地址,表示对象实例的内存地址。
- COUNT_STAR: 事务事件的总次数,即该事件被触发的总次数。
- SUM_TIMER_WAIT: 所有事务事件的总等待时间,以毫秒为单位。
- MIN_TIMER_WAIT: 单个事务事件的最小等待时间,以毫秒为单位。
- AVG_TIMER_WAIT: 单个事务事件的平均等待时间,以毫秒为单位。
- MAX_TIMER_WAIT: 单个事务事件的最大等待时间,以毫秒为单位。
这个表通过汇总按实例的等待事件统计信息,帮助数据库管理员分析和优化数据库性能,特别是了解不同实例上的等待事件情况。通过这些信息,管理员可以识别出性能瓶颈和优化点,例如,如果某个实例的等待时间特别长,可能需要检查该实例的资源使用情况或配置。

events_waits_summary_by_thread_by_event_name
这个表名为 events_waits_summary_by_thread_by_event_name,是 MySQL Performance Schema 中的一个表,用于按线程和事件名称汇总等待事件的统计信息。以下是表中每一列的含义:
- THREAD_ID: 线程的唯一标识符,表示执行等待操作的线程。
- EVENT_NAME: 等待事件的名称,表示正在等待的事件类型。
- COUNT_STAR: 事务事件的总次数,即该事件被触发的总次数。
- SUM_TIMER_WAIT: 所有事务事件的总等待时间,以毫秒为单位。
- MIN_TIMER_WAIT: 单个事务事件的最小等待时间,以毫秒为单位。
- AVG_TIMER_WAIT: 单个事务事件的平均等待时间,以毫秒为单位。
- MAX_TIMER_WAIT: 单个事务事件的最大等待时间,以毫秒为单位。
这个表通过汇总按线程和事件名称的等待事件统计信息,帮助数据库管理员分析和优化数据库性能,特别是了解不同线程上的等待事件情况。通过这些信息,管理员可以识别出性能瓶颈和优化点,例如,如果某个线程的等待时间特别长,可能需要检查该线程的执行逻辑或资源使用情况。

events_waits_summary_by_user_by_event_name
这个表名为 events_waits_summary_by_user_by_event_name,是 MySQL Performance Schema 中的一个表,用于按用户和事件名称汇总等待事件的统计信息。以下是表中每一列的含义:
- USER: 用户名,表示执行等待操作的数据库用户。
- EVENT_NAME: 等待事件的名称,表示正在等待的事件类型。
- COUNT_STAR: 事务事件的总次数,即该事件被触发的总次数。
- SUM_TIMER_WAIT: 所有事务事件的总等待时间,以毫秒为单位。
- MIN_TIMER_WAIT: 单个事务事件的最小等待时间,以毫秒为单位。
- AVG_TIMER_WAIT: 单个事务事件的平均等待时间,以毫秒为单位。
- MAX_TIMER_WAIT: 单个事务事件的最大等待时间,以毫秒为单位。
这个表通过汇总按用户和事件名称的等待事件统计信息,帮助数据库管理员分析和优化数据库性能,特别是了解不同用户上的等待事件情况。通过这些信息,管理员可以识别出性能瓶颈和优化点,例如,如果某个用户的等待时间特别长,可能需要检查该用户的查询效率或资源使用情况。

events_waits_summary_global_by_event_name
这个表名为 events_waits_summary_global_by_event_name,是 MySQL Performance Schema 中的一个表,用于全局汇总不同事件的等待统计信息。以下是表中每一列的含义:
- EVENT_NAME: 等待事件的名称,表示正在等待的事件类型。
- COUNT_STAR: 该事件的总发生次数,即该事件被触发的总次数。
- SUM_TIMER_WAIT: 所有该事件的总等待时间,以毫秒为单位。
- MIN_TIMER_WAIT: 单个该事件的最小等待时间,以毫秒为单位。
- AVG_TIMER_WAIT: 单个该事件的平均等待时间,以毫秒为单位。
- MAX_TIMER_WAIT: 单个该事件的最大等待时间,以毫秒为单位。
这个表通过汇总所有事件的等待统计信息,帮助数据库管理员分析整个数据库实例的等待事件性能,识别可能的性能瓶颈和优化点。例如,如果某个事件的 MAX_TIMER_WAIT 值特别高,可能表明存在性能问题,需要进一步调查和优化。

file_instances
这个表名为 file_instances,是 MySQL Performance Schema 中的一个表,用于记录文件实例的信息。以下是表中每一列的含义:
- FILE_NAME: 文件的名称,表示被访问的文件的路径和名称。
- EVENT_NAME: 事件的名称,表示与文件操作相关的事件类型。
- OPEN_COUNT: 打开文件的次数,表示该文件被打开的总次数。
这个表通过记录文件实例的信息,帮助数据库管理员了解数据库服务器对文件的访问情况,包括哪些文件被频繁访问以及它们的打开次数。这些信息可以用于性能分析和优化,例如,如果发现某个文件被频繁打开,可能需要检查相关的数据库操作是否高效,或者是否需要对文件进行缓存以提高性能。

file_summary_by_event_name
这个表名为 file_summary_by_event_name,是 MySQL Performance Schema 中的一个表,用于按事件名称汇总文件操作的统计信息。以下是表中每一列的含义:
- EVENT_NAME: 事件的名称,表示文件操作相关的事件类型。
- COUNT_STAR: 该事件的总发生次数,即该事件被触发的总次数。
- SUM_TIMER_WAIT: 所有该事件的总等待时间,以毫秒为单位。
- MIN_TIMER_WAIT: 单个该事件的最小等待时间,以毫秒为单位。
- AVG_TIMER_WAIT: 单个该事件的平均等待时间,以毫秒为单位。
- MAX_TIMER_WAIT: 单个该事件的最大等待时间,以毫秒为单位。
- COUNT_READ: 该事件的读操作次数。
- SUM_TIMER_READ: 所有该事件的读操作总时间,以毫秒为单位。
- MIN_TIMER_READ: 单个该事件的读操作最小时间,以毫秒为单位。
- AVG_TIMER_READ: 单个该事件的读操作平均时间,以毫秒为单位。
- MAX_TIMER_READ: 单个该事件的读操作最大时间,以毫秒为单位。
- SUM_NUMBER_OF_BYTES_READ: 所有该事件的读操作总字节数。
- COUNT_WRITE: 该事件的写操作次数。
- SUM_TIMER_WRITE: 所有该事件的写操作总时间,以毫秒为单位。
- MIN_TIMER_WRITE: 单个该事件的写操作最小时间,以毫秒为单位。
- AVG_TIMER_WRITE: 单个该事件的写操作平均时间,以毫秒为单位。
- MAX_TIMER_WRITE: 单个该事件的写操作最大时间,以毫秒为单位。
- SUM_NUMBER_OF_BYTES_WRITE: 所有该事件的写操作总字节数。
- COUNT_MISC: 该事件的其他操作次数。
- SUM_TIMER_MISC: 所有该事件的其他操作总时间,以毫秒为单位。
- MIN_TIMER_MISC: 单个该事件的其他操作最小时间,以毫秒为单位。
- AVG_TIMER_MISC: 单个该事件的其他操作平均时间,以毫秒为单位。
- MAX_TIMER_MISC: 单个该事件的其他操作最大时间,以毫秒为单位。
这个表通过汇总按事件名称的文件操作统计信息,帮助数据库管理员分析和优化数据库性能,特别是了解不同文件操作的等待时间和数据传输情况。通过这些信息,管理员可以识别出性能瓶颈和优化点,例如,如果某个事件的 MAX_TIMER_WAIT 值特别高,可能表明存在性能问题,需要进一步调查和优化。


file_summary_by_instance
这个表名为 file_summary_by_instance,是 MySQL Performance Schema 中的一个表,用于按文件实例汇总文件操作的统计信息。以下是表中每一列的含义:
- FILE_NAME: 文件的名称,表示被访问的文件的路径和名称。
- EVENT_NAME: 事件的名称,表示文件操作相关的事件类型。
- OBJECT_INSTANCE_BEGIN: 对象实例的开始地址,表示对象实例的内存地址。
- COUNT_STAR: 该事件的总发生次数,即该事件被触发的总次数。
- SUM_TIMER_WAIT: 所有该事件的总等待时间,以毫秒为单位。
- MIN_TIMER_WAIT: 单个该事件的最小等待时间,以毫秒为单位。
- AVG_TIMER_WAIT: 单个该事件的平均等待时间,以毫秒为单位。
- MAX_TIMER_WAIT: 单个该事件的最大等待时间,以毫秒为单位。
- COUNT_READ: 该事件的读操作次数。
- SUM_TIMER_READ: 所有该事件的读操作总时间,以毫秒为单位。
- MIN_TIMER_READ: 单个该事件的读操作最小时间,以毫秒为单位。
- AVG_TIMER_READ: 单个该事件的读操作平均时间,以毫秒为单位。
- MAX_TIMER_READ: 单个该事件的读操作最大时间,以毫秒为单位。
- SUM_NUMBER_OF_BYTES_READ: 所有该事件的读操作总字节数。
- COUNT_WRITE: 该事件的写操作次数。
- SUM_TIMER_WRITE: 所有该事件的写操作总时间,以毫秒为单位。
- MIN_TIMER_WRITE: 单个该事件的写操作最小时间,以毫秒为单位。
- AVG_TIMER_WRITE: 单个该事件的写操作平均时间,以毫秒为单位。
- MAX_TIMER_WRITE: 单个该事件的写操作最大时间,以毫秒为单位。
- SUM_NUMBER_OF_BYTES_WRITE: 所有该事件的写操作总字节数。
- COUNT_MISC: 该事件的其他操作次数。
- SUM_TIMER_MISC: 所有该事件的其他操作总时间,以毫秒为单位。
- MIN_TIMER_MISC: 单个该事件的其他操作最小时间,以毫秒为单位。
- AVG_TIMER_MISC: 单个该事件的其他操作平均时间,以毫秒为单位。
- MAX_TIMER_MISC: 单个该事件的其他操作最大时间,以毫秒为单位。
这个表通过汇总按文件实例的文件操作统计信息,帮助数据库管理员分析和优化数据库性能,特别是了解不同文件实例上的文件操作情况。通过这些信息,管理员可以识别出性能瓶颈和优化点,例如,如果某个文件实例的 MAX_TIMER_WAIT 值特别高,可能表明存在性能问题,需要进一步调查和优化。


global_status
这个表名为 global_status,是 MySQL Performance Schema 中的一个表,用于显示全局服务器状态信息。以下是表中每一列的含义:
- VARIABLE_NAME: 变量的名称,表示服务器状态的特定指标。
- VARIABLE_VALUE: 变量的值,表示对应
VARIABLE_NAME的具体数值。
这个表通过记录服务器的全局状态信息,帮助数据库管理员了解数据库服务器的当前运行状态。例如,Aborted_clients 表示由于各种错误(如网络问题、超时等)被中断的客户端连接数。这些信息可以用于监控和诊断数据库服务器的性能问题。
在你提供的查询结果中,Aborted_clients 的值为 13,这意味着有 13 个客户端连接由于错误而被中断。这些信息可以帮助管理员识别可能的网络问题或配置问题,从而采取相应的措施来提高数据库的稳定性和性能。

global_variables
这个表名为 global_variables,是 MySQL Performance Schema 中的一个表,用于显示全局变量的当前设置。以下是表中每一列的含义:
- VARIABLE_NAME: 变量的名称,表示服务器配置的特定选项。
- VARIABLE_VALUE: 变量的值,表示对应
VARIABLE_NAME的具体设置。
这个表通过记录服务器的全局变量设置,帮助数据库管理员了解和管理系统的配置。例如,activate_all_roles_on_login 变量控制是否在用户登录时自动激活所有角色。这些信息可以用于监控和调整数据库服务器的运行时行为。
在你提供的查询结果中,activate_all_roles_on_login 的值为 OFF,这意味着在用户登录时不会自动激活所有角色。这些信息可以帮助管理员了解当前的服务器配置,并根据需要进行调整。

host_cache
这个表名为 host_cache,是 MySQL Performance Schema 中的一个表,用于记录客户端主机的缓存信息。以下是表中每一列的含义:
- IP: 客户端主机的 IP 地址。
- HOST: 客户端主机的名称,可以是主机名或 IP 地址。
- COUNT_VALIDATED: 验证次数,表示该主机名是否已通过验证的次数。
- COUNT_HOST_BLOCKED_ERRORS: 被阻止错误次数,表示由于主机名解析问题导致连接被阻止的次数。
- COUNT_NAMEINFO_TRANSIENT_ERRORS: 临时错误次数,表示在获取主机信息时遇到的临时错误次数。
- COUNT_NAMEINFO_PERMANENT_ERRORS: 永久错误次数,表示在获取主机信息时遇到的永久错误次数。
- COUNT_FORMAT_ERRORS: 格式错误次数,表示由于格式问题导致的错误次数。
- COUNT_ADDRINFO_TRANSIENT_ERRORS: 地址信息临时错误次数,表示在获取地址信息时遇到的临时错误次数。
- COUNT_ADDRINFO_PERMANENT_ERRORS: 地址信息永久错误次数,表示在获取地址信息时遇到的永久错误次数。
- COUNT_FCDNS_ERRORS: 全称 DNS 错误次数,表示在获取全称 DNS 时遇到的错误次数。
- COUNT_HOST_ACL_ERRORS: 主机访问控制错误次数,表示由于访问控制列表(ACL)导致的错误次数。
- COUNT_NO_AUTH_PLUGIN_ERRORS: 无认证插件错误次数,表示由于缺少认证插件导致的错误次数。
- COUNT_AUTH_PLUGIN_ERRORS: 认证插件错误次数,表示由于认证插件导致的错误次数。
- COUNT_HANDSHAKE_ERRORS: 握手错误次数,表示在 SSL/TLS 握手过程中遇到的错误次数。
- COUNT_PROXY_USER_ACL_ERRORS: 代理用户访问控制错误次数,表示由于代理用户访问控制列表(ACL)导致的错误次数。
- COUNT_AUTHENTICATION_ERRORS: 认证错误次数,表示由于认证失败导致的错误次数。
- COUNT_SSL_ERRORS: SSL 错误次数,表示由于 SSL/TLS 配置问题导致的错误次数。
- COUNT_MAX_USER_CONNECTIONS_ERRORS: 最大用户连接错误次数,表示由于达到最大用户连接数限制导致的错误次数。
- COUNT_MAX_USER_CONNECTIONS_PER_HOUR_ERRORS: 每小时最大用户连接错误次数,表示由于达到每小时最大用户连接数限制导致的错误次数。
- COUNT_DEFAULT_DATABASE_ERRORS: 默认数据库错误次数,表示由于默认数据库配置问题导致的错误次数。
- COUNT_INIT_CONNECT_ERRORS: 初始化连接错误次数,表示在初始化连接时遇到的错误次数。
- COUNT_LOCAL_ERRORS: 本地错误次数,表示由于本地配置问题导致的错误次数。
- COUNT_UNKNOWN_ERRORS: 未知错误次数,表示由于未知原因导致的错误次数。
- FIRST_SEEN: 首次出现时间,表示该主机首次出现错误的时间戳。
- LAST_SEEN: 最后一次出现时间,表示该主机最后一次出现错误的时间戳。
- FIRST_ERROR_SEEN: 首次错误时间,表示该主机首次出现错误的时间戳。
- LAST_ERROR_SEEN: 最后一次错误时间,表示该主机最后一次出现错误的时间戳。
这个表通过记录客户端主机的缓存信息和错误统计,帮助数据库管理员分析和诊断连接问题,特别是了解不同主机上的连接错误情况。通过这些信息,管理员可以识别出性能瓶颈和优化点,例如,如果某个主机的 COUNT_HOST_BLOCKED_ERRORS 值特别高,可能需要检查该主机的网络连接或数据库配置。


hosts
这个表名为 hosts,是 MySQL Performance Schema 中的一个表,用于记录与数据库服务器连接的主机信息。以下是表中每一列的含义:
- HOST: 主机名或 IP 地址,表示连接到数据库服务器的客户端主机。
- CURRENT_CONNECTIONS: 当前连接数,表示当前从该主机到数据库服务器的活跃连接数量。
- TOTAL_CONNECTIONS: 总连接数,表示从该主机到数据库服务器的连接总次数。
- MAX_SESSION_CONTROLLED_MEMORY: 最大会话控制内存,表示从该主机连接的会话可以使用的最大内存量。
- MAX_SESSION_TOTAL_MEMORY: 最大会话总内存,表示从该主机连接的所有会话可以使用的总内存量。
这个表通过记录与数据库服务器连接的主机信息,帮助数据库管理员了解和监控不同主机的连接情况和资源使用情况。例如,如果某个主机的 CURRENT_CONNECTIONS 值特别高,可能表明该主机有大量的数据库访问需求,或者可能存在性能问题。管理员可以根据这些信息进行相应的优化和调整。


innodb_redo_log_files
这个表名为 innodb_redo_log_files,是 MySQL Performance Schema 中的一个表,用于记录 InnoDB 存储引擎的重做日志文件的信息。以下是表中每一列的含义:
- FILE_ID: 文件的唯一标识符,表示重做日志文件的 ID。
- FILE_NAME: 文件的名称,表示重做日志文件的路径和名称。
- START_LSN: 开始 LSN(Log Sequence Number),表示文件中第一个块的 LSN。
- END_LSN: 结束 LSN,表示文件中最后一个块的 LSN。
- SIZE_IN_BYTES: 文件大小,以字节为单位,表示文件的大小。
- IS_FULL: 是否已满,表示文件是否已满,1 表示已满,0 表示未满。
- CONSUMER_LEVEL: 消费者级别,表示所有重做日志操作的级别,级别低于此值的操作已经消费了该文件。
这个表通过记录 InnoDB 重做日志文件的信息,帮助数据库管理员了解和监控重做日志文件的使用情况。例如,通过查看 IS_FULL 列,管理员可以了解哪些日志文件已经满了,可能需要进行归档或清理。通过 CONSUMER_LEVEL 列,管理员可以了解重做日志的消费情况,确保数据的一致性和恢复能力。

在 MySQL 8.0 中,重做日志(redo log)的数量和临时文件的数量由以下参数控制:
innodb_log_files_in_group:控制重做日志磁盘上的文件个数,默认为2。这是在 MySQL 8.0.30 之前的版本中使用的参数。innodb_log_file_size:控制重做日志磁盘上单个文件的大小,默认为48MB。这也是在 MySQL 8.0.30 之前的版本中使用的参数。
从 MySQL 8.0.30 版本开始,引入了一个新的参数 innodb_redo_log_capacity 来代替上述两个参数,用于控制重做日志总的大小。innodb_redo_log_capacity 的默认值是100MB,最大重做日志容量为128GB。这个参数会在数据目录下生成 #innodb_redo 的子目录,磁盘文件的存储形式不再是类似 ib_logfileN 这样的文件,而是替代为 #ib_redoN 这样新文件形式。这些新的文件一共有32个,按照参数 innodb_redo_log_capacity 来平均分配。因此,innodb_redo_log_capacity 参数控制了重做日志的总容量,从而间接控制了日志文件的数量和大小。
此外,innodb_redo_log_capacity_resized 状态变量用于在 MySQL 侧监控当前重做日志文件大小的调整情况。可以通过查询 performance_schema.innodb_redo_log_files 表来获取当前使用的重做日志文件的详细信息,包括 LSN 区间、实际写入大小、是否已满等统计数据。
总结来说,对于 MySQL 8.0.30 之前的版本,重做日志文件的数量和大小由 innodb_log_files_in_group 和 innodb_log_file_size 参数控制。而对于 MySQL 8.0.30 及之后的版本,使用 innodb_redo_log_capacity 参数来控制重做日志的总容量,这个参数会间接控制日志文件的数量和大小。同时,innodb_redo_log_capacity_resized 状态变量和 performance_schema.innodb_redo_log_files 表提供了监控和调整重做日志大小的额外信息。

keyring_component_status
这个表名为 keyring_component_status,是 MySQL Performance Schema 中的一个表,用于显示密钥环组件的状态信息。以下是表中每一列的含义:
- STATUS_KEY: 状态键,表示密钥环组件的特定状态或属性。
- STATUS_VALUE: 状态值,表示对应
STATUS_KEY的具体状态或属性值。
这个表通过记录密钥环组件的状态信息,帮助数据库管理员了解和管理系统的密钥环组件。密钥环组件用于管理加密密钥,这些密钥可以用于加密存储在数据库中的敏感数据,如用户密码或其他加密材料。
在你提供的查询结果中,keyring_component_status 表是空的,这意味着当前没有记录任何密钥环组件的状态信息。这可能是因为密钥环组件未启用,或者当前没有相关的活动或状态需要记录。如果需要使用密钥环功能,管理员可能需要检查配置并确保密钥环组件已正确设置和启用。

keyring_keys
这个表名为 keyring_keys,是 MySQL Performance Schema 中的一个表,用于记录密钥环(Keyring)中的密钥信息。密钥环是 MySQL 8.0 引入的一个新特性,用于安全地存储和管理加密密钥。以下是表中每一列的含义:
- KEY_ID: 密钥的唯一标识符,表示密钥环中的特定密钥。
- KEY_OWNER: 密钥所有者,表示拥有该密钥的用户或服务。
- BACKEND_KEY_ID: 后端密钥 ID,表示与该密钥关联的后端密钥的标识符。
这个表通过记录密钥环中的密钥信息,帮助数据库管理员了解和管理系统的密钥。密钥环中的密钥可以用于加密和解密敏感数据,如用户密码或其他加密材料。
在你提供的查询结果中,keyring_keys 表是空的,这意味着当前没有记录任何密钥信息。这可能是因为密钥环功能未启用,或者当前没有相关的密钥需要记录。如果需要使用密钥环功能,管理员可能需要检查配置并确保密钥环组件已正确设置和启用。

log_status
这个表名为 log_status,是 MySQL Performance Schema 中的一个表,用于记录服务器的日志状态信息。以下是表中每一列的含义:
- SERVER_UUID: 服务器的唯一标识符,用于标识特定的 MySQL 实例。
- LOCAL: 包含有关本地事务日志状态的信息,包括:
-
gtid_executed: 最后一个事务的全局事务标识符(GTID)。binary_log_file: 当前使用的二进制日志文件的名称。binary_log_position: 当前二进制日志文件中的位置。
- REPLICATION: 包含有关复制状态的信息,包括:
-
channels: 复制通道的列表。
- STORAGE_ENGINES: 包含有关存储引擎状态的信息,例如 InnoDB 的 LSN(Log Sequence Number)和检查点信息。
这些信息可以帮助数据库管理员了解当前服务器的日志状态,包括事务日志、复制状态和存储引擎的状态。这对于监控和诊断数据库的运行情况非常有用。

memory_summary_by_account_by_event_name
这个表名为 memory_summary_by_account_by_event_name,是 MySQL Performance Schema 中的一个表,用于按账户和事件名称汇总内存使用的统计信息。以下是表中每一列的含义:
- USER: 用户名,表示执行操作的数据库用户。
- HOST: 主机名,表示执行操作的客户端主机。
- EVENT_NAME: 事件的名称,表示内存使用相关的事件类型。
- COUNT_ALLOC: 分配次数,表示该事件的内存分配次数。
- COUNT_FREE: 释放次数,表示该事件的内存释放次数。
- SUM_NUMBER_OF_BYTES_ALLOC: 总分配字节数,表示该事件的内存总分配量。
- SUM_NUMBER_OF_BYTES_FREE: 总释放字节数,表示该事件的内存总释放量。
- LOW_COUNT_USED: 最低使用次数,表示该事件的内存使用次数的最低值。
- CURRENT_COUNT_USED: 当前使用次数,表示该事件的当前内存使用次数。
- HIGH_COUNT_USED: 最高使用次数,表示该事件的内存使用次数的最高值。
- LOW_NUMBER_OF_BYTES_USED: 最低使用字节数,表示该事件的内存使用量的最低值。
- CURRENT_NUMBER_OF_BYTES_USED: 当前使用字节数,表示该事件的当前内存使用量。
- HIGH_NUMBER_OF_BYTES_USED: 最高使用字节数,表示该事件的内存使用量的最高值。
这个表通过汇总按账户和事件名称的内存使用统计信息,帮助数据库管理员分析和优化数据库性能,特别是了解不同用户和事件的内存使用情况。通过这些信息,管理员可以识别出内存使用的热点和潜在的性能问题,从而采取相应的优化措施。

memory_summary_by_host_by_event_name
这个表名为 memory_summary_by_host_by_event_name,是 MySQL Performance Schema 中的一个表,用于按主机和事件名称汇总内存使用的统计信息。以下是表中每一列的含义:
- HOST: 主机名,表示执行操作的客户端主机。
- EVENT_NAME: 事件的名称,表示内存使用相关的事件类型。
- COUNT_ALLOC: 分配次数,表示该事件的内存分配次数。
- COUNT_FREE: 释放次数,表示该事件的内存释放次数。
- SUM_NUMBER_OF_BYTES_ALLOC: 总分配字节数,表示该事件的内存总分配量。
- SUM_NUMBER_OF_BYTES_FREE: 总释放字节数,表示该事件的内存总释放量。
- LOW_COUNT_USED: 最低使用次数,表示该事件的内存使用次数的最低值。
- CURRENT_COUNT_USED: 当前使用次数,表示该事件的当前内存使用次数。
- HIGH_COUNT_USED: 最高使用次数,表示该事件的内存使用次数的最高值。
- LOW_NUMBER_OF_BYTES_USED: 最低使用字节数,表示该事件的内存使用量的最低值。
- CURRENT_NUMBER_OF_BYTES_USED: 当前使用字节数,表示该事件的当前内存使用量。
- HIGH_NUMBER_OF_BYTES_USED: 最高使用字节数,表示该事件的内存使用量的最高值。
这个表通过汇总按主机和事件名称的内存使用统计信息,帮助数据库管理员分析和优化数据库性能,特别是了解不同主机上的内存使用情况。通过这些信息,管理员可以识别出内存使用的热点和潜在的性能问题,从而采取相应的优化措施。

memory_summary_by_thread_by_event_name
这个表名为 memory_summary_by_thread_by_event_name,是 MySQL Performance Schema 中的一个表,用于按线程和事件名称汇总内存使用的统计信息。以下是表中每一列的含义:
- THREAD_ID: 线程的唯一标识符,表示执行操作的线程。
- EVENT_NAME: 事件的名称,表示内存使用相关的事件类型。
- COUNT_ALLOC: 分配次数,表示该事件的内存分配次数。
- COUNT_FREE: 释放次数,表示该事件的内存释放次数。
- SUM_NUMBER_OF_BYTES_ALLOC: 总分配字节数,表示该事件的内存总分配量。
- SUM_NUMBER_OF_BYTES_FREE: 总释放字节数,表示该事件的内存总释放量。
- LOW_COUNT_USED: 最低使用次数,表示该事件的内存使用次数的最低值。
- CURRENT_COUNT_USED: 当前使用次数,表示该事件的当前内存使用次数。
- HIGH_COUNT_USED: 最高使用次数,表示该事件的内存使用次数的最高值。
- LOW_NUMBER_OF_BYTES_USED: 最低使用字节数,表示该事件的内存使用量的最低值。
- CURRENT_NUMBER_OF_BYTES_USED: 当前使用字节数,表示该事件的当前内存使用量。
- HIGH_NUMBER_OF_BYTES_USED: 最高使用字节数,表示该事件的内存使用量的最高值。
这个表通过汇总按线程和事件名称的内存使用统计信息,帮助数据库管理员分析和优化数据库性能,特别是了解不同线程上的内存使用情况。通过这些信息,管理员可以识别出内存使用的热点和潜在的性能问题,从而采取相应的优化措施。

memory_summary_by_user_by_event_name
这个表名为 memory_summary_by_user_by_event_name,是 MySQL Performance Schema 中的一个表,用于按用户和事件名称汇总内存使用的统计信息。以下是表中每一列的含义:
- USER: 用户名,表示执行操作的数据库用户。
- EVENT_NAME: 事件的名称,表示内存使用相关的事件类型。
- COUNT_ALLOC: 分配次数,表示该事件的内存分配次数。
- COUNT_FREE: 释放次数,表示该事件的内存释放次数。
- SUM_NUMBER_OF_BYTES_ALLOC: 总分配字节数,表示该事件的内存总分配量。
- SUM_NUMBER_OF_BYTES_FREE: 总释放字节数,表示该事件的内存总释放量。
- LOW_COUNT_USED: 最低使用次数,表示该事件的内存使用次数的最低值。
- CURRENT_COUNT_USED: 当前使用次数,表示该事件的当前内存使用次数。
- HIGH_COUNT_USED: 最高使用次数,表示该事件的内存使用次数的最高值。
- LOW_NUMBER_OF_BYTES_USED: 最低使用字节数,表示该事件的内存使用量的最低值。
- CURRENT_NUMBER_OF_BYTES_USED: 当前使用字节数,表示该事件的当前内存使用量。
- HIGH_NUMBER_OF_BYTES_USED: 最高使用字节数,表示该事件的内存使用量的最高值。
这个表通过汇总按用户和事件名称的内存使用统计信息,帮助数据库管理员分析和优化数据库性能,特别是了解不同用户上的内存使用情况。通过这些信息,管理员可以识别出内存使用的热点和潜在的性能问题,从而采取相应的优化措施。

memory_summary_global_by_event_name
这个表名为 memory_summary_global_by_event_name,是 MySQL Performance Schema 中的一个表,用于全局汇总内存使用的统计信息,按事件名称分类。以下是表中每一列的含义:
- EVENT_NAME: 事件的名称,表示内存使用相关的事件类型。
- COUNT_ALLOC: 分配次数,表示该事件的内存分配次数。
- COUNT_FREE: 释放次数,表示该事件的内存释放次数。
- SUM_NUMBER_OF_BYTES_ALLOC: 总分配字节数,表示该事件的内存总分配量。
- SUM_NUMBER_OF_BYTES_FREE: 总释放字节数,表示该事件的内存总释放量。
- LOW_COUNT_USED: 最低使用次数,表示该事件的内存使用次数的最低值。
- CURRENT_COUNT_USED: 当前使用次数,表示该事件的当前内存使用次数。
- HIGH_COUNT_USED: 最高使用次数,表示该事件的内存使用次数的最高值。
- LOW_NUMBER_OF_BYTES_USED: 最低使用字节数,表示该事件的内存使用量的最低值。
- CURRENT_NUMBER_OF_BYTES_USED: 当前使用字节数,表示该事件的当前内存使用量。
- HIGH_NUMBER_OF_BYTES_USED: 最高使用字节数,表示该事件的内存使用量的最高值。
这个表通过汇总全局内存使用统计信息,帮助数据库管理员了解和优化数据库性能,特别是了解不同事件的内存使用情况。通过这些信息,管理员可以识别出内存使用的热点和潜在的性能问题,从而采取相应的优化措施。例如,如果某个事件的 HIGH_NUMBER_OF_BYTES_USED 值特别高,可能表明存在内存泄漏或需要优化的内存密集型操作。
常用sql
SELECT EVENT_NAME,
CURRENT_NUMBER_OF_BYTES_USED / 1024 / 1024 AS MB_used
FROM performance_schema.memory_summary_global_by_event_name
WHERE CURRENT_NUMBER_OF_BYTES_USED > 0
ORDER BY MB_used DESC
LIMIT 30;

metadata_locks
这个表名为 metadata_locks,是 MySQL Performance Schema 中的一个表,用于记录元数据锁的信息。元数据锁是 InnoDB 存储引擎用来管理对元数据(如表结构、索引等)的并发访问的锁。以下是表中每一列的含义:
- OBJECT_TYPE: 对象类型,表示被锁定的对象类型,例如表或数据库。
- OBJECT_SCHEMA: 对象模式,表示对象所在的数据库模式(schema)。
- OBJECT_NAME: 对象名称,表示被锁定的具体对象名称。
- COLUMN_NAME: 列名称,表示被锁定的列名称(如果有的话)。
- OBJECT_INSTANCE_BEGIN: 对象实例开始,表示锁的起始点。
- LOCK_TYPE: 锁类型,表示锁的类型,例如共享锁或排他锁。
- LOCK_DURATION: 锁持续时间,表示锁持有的时间长度。
- LOCK_STATUS: 锁状态,表示锁的当前状态,例如等待或持有。
- SOURCE: 来源,表示请求锁的源,例如 SQL 语句或存储过程。
- OWNER_THREAD_ID: 所有者线程 ID,表示持有锁的线程 ID。
- OWNER_EVENT_ID: 所有者事件 ID,表示持有锁的事件 ID。
这个表通过记录元数据锁的信息,帮助数据库管理员了解和诊断数据库中的锁争用情况。通过这些信息,管理员可以识别出潜在的死锁问题或性能瓶颈,从而采取相应的优化措施。例如,如果发现某个对象被长时间锁定,可能需要检查相关的 SQL 语句或事务,以确保它们不会长时间持有锁。

mutex_instances
这个表名为 mutex_instances,是 MySQL Performance Schema 中的一个表,用于记录当前系统中的互斥锁(mutex)实例信息。互斥锁是用于确保在多线程环境中对共享资源的访问是互斥的,以防止数据竞争条件和死锁。
以下是表中每一列的含义:
- NAME: 互斥锁的名称,表示互斥锁的标识符名称。
- OBJECT_INSTANCE_BEGIN: 对象实例开始,表示互斥锁的起始点。
- LOCKED_BY_THREAD_ID: 锁定线程 ID,表示持有该互斥锁的线程 ID。
这个表通过记录系统中互斥锁的实例信息,帮助数据库管理员了解和诊断数据库中的锁争用情况。通过这些信息,管理员可以识别出潜在的死锁争用问题或性能瓶颈,从而采取相应的优化措施。
在你提供的查询结果中,mutex_instances 表显示了一个互斥锁实例的信息:
- NAME:
wait/synch/mutex/pfs/LOCK_pfs_share_list - OBJECT_INSTANCE_BEGIN:
605464488 - LOCKED_BY_THREAD_ID:
<null>(表示当前没有线程持有该互斥锁)
这意味着名为 wait/synch/mutex/pfs/LOCK_pfs_share_list 的互斥锁目前没有被任何线程持有。

objects_summary_global_by_type
这个表名为 objects_summary_global_by_type,是 MySQL Performance Schema 中的一个表,用于按对象类型汇总对象的统计信息。以下是表中每一列的含义:
- OBJECT_TYPE: 对象类型,表示对象的类型,例如表(TABLE)、索引(INDEX)等。
- OBJECT_SCHEMA: 对象模式,表示对象所在的数据库模式(schema)。
- OBJECT_NAME: 对象名称,表示具体的对象名称。
- COUNT_STAR: 事务事件的总次数,即该对象被访问的总次数。
- SUM_TIMER_WAIT: 总等待时间,表示访问该对象的总等待时间,以毫秒为单位。
- MIN_TIMER_WAIT: 最小等待时间,表示访问该对象的最小等待时间,以毫秒为单位。
- AVG_TIMER_WAIT: 平均等待时间,表示访问该对象的平均等待时间,以毫秒为单位。
- MAX_TIMER_WAIT: 最大等待时间,表示访问该对象的最大等待时间,以毫秒为单位。
这个表通过汇总按对象类型的统计信息,帮助数据库管理员了解和优化数据库性能,特别是了解不同对象的访问情况。通过这些信息,管理员可以识别出性能瓶颈和优化点,例如,如果某个对象的 MAX_TIMER_WAIT 值特别高,可能表明存在性能问题,需要进一步调查和优化。

performance_timers
这个表名为 performance_timers,是 MySQL Performance Schema 中的一个表,用于记录性能计时器的配置信息。以下是表中每一列的含义:
- TIMER_NAME: 计时器的名称,表示性能计时器的类型,可以是
CYCLE(周期性计时器)、NANOSECOND(纳秒计时器)、MICROSECOND(微秒计时器)、MILLISECOND(毫秒计时器)或THREAD_CPU(线程 CPU 时间计时器)。 - TIMER_FREQUENCY: 计时器频率,表示计时器触发的频率。
- TIMER_RESOLUTION: 计时器分辨率,表示计时器的最小测量单位。
- TIMER_OVERHEAD: 计时器开销,表示计时器本身的开销,通常以纳秒为单位。
这些信息可以帮助数据库管理员了解和配置性能计时器,以便更好地监控和分析数据库的性能。例如,管理员可以根据计时器的频率和开销来调整计时器的配置,以获得更准确的性能数据。

persisted_variables
这个表名为 persisted_variables,是 MySQL Performance Schema 中的一个表,用于记录服务器的持久化变量(也称为系统变量)。持久化变量是那些在 MySQL 重启后仍然保持其值的变量,与会话变量(session variables)不同,会话变量在每个会话结束时重置。
以下是表中每一列的含义:
- VARIABLE_NAME: 变量名称,表示持久化变量的名称。
- VARIABLE_VALUE: 变量值,表示对应
VARIABLE_NAME的值。
这个表通过记录持久化变量的信息,帮助数据库管理员了解和管理系统的配置。持久化变量通常用于设置服务器的全局配置,如缓冲池大小、日志级别等,这些配置在服务器重启后仍然有效。
在你提供的查询结果中,persisted_variables 表是空的,这意味着当前没有记录任何持久化变量。这可能是因为服务器尚未设置任何持久化变量,或者查询时没有正确地选择了表。如果需要设置持久化变量,可以在 MySQL 配置文件中进行设置,或者使用 SET GLOBAL 或 SET PERSIST 命令在运行时设置。

prepared_statements_instances
这个表名为 prepared_statements_instances,是 MySQL Performance Schema 中的一个表,用于记录预处理语句(prepared statements)的实例信息。预处理语句是一种数据库对象,它可以在执行前编译并缓存,以便在需要时多次执行,从而提高性能。
以下是表中每一列的含义:
- OBJECT_INSTANCE_BEGIN: 对象实例开始,表示预处理语句实例的起始点。
- STATEMENT_ID: 语句 ID,表示预处理语句的 ID。
- STATEMENT_NAME: 语句名称,表示预处理语句的名称。
- SQL_TEXT: SQL 文本,表示预处理语句的 SQL 文本。
- OWNER_THREAD_ID: 所有者线程 ID,表示创建预处理语句的线程 ID。
- OWNER_EVENT_ID: 所有者事件 ID,表示创建预处理语句的事件 ID。
- OWNER_OBJECT_TYPE: 所有者对象类型,表示预处理语句的所有者类型(如 EVENT、FUNCTION、PROCEDURE、TABLE、TRIGGER)。
- OWNER_OBJECT_SCHEMA: 所有者对象模式,表示预处理语句的所有者模式(schema)。
- OBJECT_NAME: 所有者对象名称,表示预处理语句的所有者对象名称。
- EXECUTION_ENGINE: 执行引擎,表示预处理语句使用的执行引擎。
- TIMER_PREPARE: 准备时间,表示预处理语句的准备时间。
- COUNT_PREPARE: 准备次数,表示预处理语句被准备的次数。
- COUNT_EXECUTE: 执行次数,表示预处理语句被执行的次数。
- SUM_TIMER_EXECUTE: 总执行时间,表示预处理语句的总执行时间。
- MIN_TIMER_EXECUTE: 最小执行时间,表示预处理语句的最小执行时间。
- AVG_TIMER_EXECUTE: 平均执行时间,表示预处理语句的平均执行时间。
- MAX_TIMER_EXECUTE: 最大执行时间,表示预处理语句的最大执行时间。
- SUM_LOCK_TIME: 总锁定时间,表示预处理语句的总锁定时间。
- SUM_ERRORS: 错误次数,表示预处理语句执行时遇到的错误次数。
- SUM_WARNINGS: 警告次数,表示预处理语句执行时遇到的警告次数。
- SUM_ROWS_AFFECTED: 影响行数,表示预处理语句影响的行数。
- SUM_ROWS_SENT: 发送行数,表示预处理语句发送的行数。
- SUM_ROWS_EXAMINED: 检查行数,表示预处理语句检查的行数。
- SUM_TMP_DISK_TABLES: 创建的临时磁盘表数,表示预处理语句创建的临时磁盘表数。
- SUM_CREATED: 创建的临时表数,表示预处理语句创建的临时表数。
- SUM_FULL_JOIN: 完整连接数,表示预处理语句执行的完整连接数。
- SUM_SELECT_FULL_JOIN: 完整连接数,表示预处理语句执行的完整连接数。
- SUM_SELECT_FULL_RANGE_JOIN: 完整范围连接数,表示预处理语句执行的完整范围连接数。
- SUM_SELECT_RANGE: 范围检查数,表示预处理语句执行的范围检查数。
- SUM_SELECT_RANGE_CHECK: 范围检查数,表示预处理语句执行的范围检查数。
- SUM_SORT_MERGE_PASSES: 合并传递数,表示预处理语句执行的合并传递数。
- SUM_SORT_RANGE: 排序范围数,表示预处理语句执行的排序范围数。
- SUM_SORT_ROWS: 排序行数,表示预处理语句执行的排序行数。
- SUM_SORT: 排序数,表示预处理语句执行的排序数。
- SUM_INDEX_USED: 使用索引数,表示预处理语句使用索引的次数。
- SUM_NO_INDEX: 未使用索引数,表示预处理语句未使用索引的次数。
- SUM_NO_GOOD_INDEX: 好索引数,表示预处理语句使用好索引的次数。
- SUM_CPU_TIME: CPU 时间,表示预处理语句的总 CPU 时间。
- MAX_CONTROLED_MEMORY: 最大控制内存,表示预处理语句使用的最大控制内存。
- MAX_TO: 最大时间,表示预处理语句的最大时间。
- COUNT: 语句数,表示预处理语句的数量。
- OBJECT: 对象,表示预处理语句的对象。
这个表通过记录预处理语句的实例信息,帮助数据库管理员了解和优化数据库性能,特别是了解预处理语句的使用情况。通过这些信息,管理员可以识别出性能瓶颈和优化点,例如,如果某个预处理语句的 MAX_TIMER_EXECUTE 值特别高,可能表明存在性能问题,需要进一步调查和优化。

processlist
这个表名为 processlist,是 MySQL Performance Schema 中的一个表,用于记录当前正在执行的线程和进程的信息。以下是表中每一列的含义:
- ID: 进程的唯一标识符。
- USER: 执行进程的所有者用户名。
- HOST: 执行进程的主机名或 IP 地址。
- DB: 进程当前连接的数据库(如果有的话)。
- COMMAND: 进程正在执行的命令类型,如 Query、Sleep、Connect 等。
- TIME: 进程已经运行的时间,以秒为单位。
- STATE: 进程的当前状态,如 Sleep、Query、Locked、Analyzing 等。
- INFO: 进程的附加信息,如正在执行的 SQL 语句。
- EXECUTION_ENGINE: 执行引擎,表示进程使用的存储引擎。
这个表通过记录当前正在执行的线程和进程的信息,帮助数据库管理员了解和监控数据库的性能和活动。例如,可以通过这个表查看哪些进程占用了大量的 CPU 时间或内存,或者哪些进程可能存在死锁争用问题。
这些信息可以帮助管理员了解当前数据库的运行情况,识别出可能的性能问题,并进行相应的优化。

replication_applier_configuration
这个表名为 replication_applier_configuration,是 MySQL Performance Schema 中的一个表,用于记录复制应用者(replication)的配置信息。以下是表中每一列的含义:
- CHANNEL_NAME: 复制应用者的名称,表示安全上下文中的用户名。
- ASSIGNED_DELAY: 签名延迟,表示应用者签名的延迟时间(以秒为单位)。
- PRIVILEGE_CHECKS: 权限检查,表示是否启用权限检查,
YES表示启用,NO表示禁用。 - REQUIRE_TABLE_PRIMARY_KEY_CHECK: 表主键检查,表示是否在创建和更改表时强制检查表的主键。
- ASSIGN_GTIDS_TO_ANONYMOUS_TRANSACTIONS_TYPE: 为匿名事务分配 GTID 的类型,可以是
OFF、LOCAL或UUIDUUID。OFF表示匿名事务将保持匿名,LOCAL表示基于服务器 UUID 生成新的 GTID,UUID` 表示基于为匿名事务生成新的 GTID。 - ASSIGN_GTIDS_TO_ANONYMOUS_TRANSACTIONS_VALUE: 为匿名事务分配 GTID 的值,可以是
UUID或NULL。UUID表示生成的 UUID 用于匿名事务。
这个表通过记录复制应用者的配置信息,帮助数据库管理员了解和管理系统的复制配置。例如,可以通过这个表查看应用者的延迟时间、权限检查设置以及 GTID 的分配策略。这些信息对于监控和优化复制性能以及确保数据一致性非常重要。


replication_applier_filters
这个表名为 replication_applier_filters,是 MySQL Performance Schema 中的一个表,用于记录复制应用者(replication applier)的过滤规则。以下是表中每一列的含义:
- CHANNEL_NAME: 复制通道名称,表示复制通道的名称。
- FILTER_NAME: 过滤名称,表示应用者使用的过滤规则的名称。
- FILTER_RULE: 过滤规则,表示应用者使用的过滤规则,可以是
STARTUP_OPTIONS、CHANGE_REPLICATION_FILTER、STARTUP_OPTIONS_FOR_CHANNEL或CHANGE_REPLICATION_FILTER_FOR_CHANNEL之一。 - CONFIGURED_BY: 配置时间,表示过滤规则的配置时间。
- LAST_APPLIED: 最后应用时间,表示过滤规则的最后应用时间。
- COUNTER: 计数器,表示过滤规则应用的次数。
这个表通过记录复制应用者的过滤规则,帮助数据库管理员了解和管理系统的复制配置。例如,可以通过这个表查看哪些通道应用了过滤规则,以及这些规则的配置和应用情况。这些信息对于监控和优化复制性能以及确保数据一致性非常重要。

replication_applier_global_filters
这个表名为 replication_applier_global_filters,是 MySQL Performance Schema 中的一个表,用于记录全局复制应用者(replication applier)的全局过滤规则。以下是表中每一列的含义:
- FILTER_NAME: 过滤名称,表示全局过滤规则的名称。
- FILTER_RULE: 过滤规则,表示应用者使用的过滤规则。
- CONFIGURED_BY: 配置者,表示过滤规则的配置方式,可以是
STARTUP_OPTIONS或CHANGE_REPLICATION_FILTER。 - ACTIVE_SINCE: 活跃时间戳,表示过滤规则的最后活跃时间。
这个表通过记录全局复制应用者的过滤规则,帮助数据库管理员了解和管理系统的复制配置。例如,可以通过这个表查看哪些全局过滤规则被配置以及它们的活跃时间。这些信息对于监控和优化复制性能以及确保数据一致性非常重要。

replication_applier_status
这个表名为 replication_applier_status,是 MySQL Performance Schema 中的一个表,用于记录复制应用者(replication applier)的状态信息。以下是表中每一列的含义:
- CHANNEL_NAME: 复制通道名称,表示复制通道的名称。
- ERVICE_STATE: 服务状态,表示复制通道的当前状态,可以是
ON或OFF。 - REMAINING_DELAY: 剩余延迟,表示复制通道的剩余延迟,以秒为单位。
- COUNT_TRANSACTIONS_RETRIES: 事务重试次数,表示复制通道尝试重试事务的次数。
这个表通过记录复制应用者的状态信息,帮助数据库管理员了解和监控数据库的性能。例如,可以通过这个表查看复制通道的状态和延迟情况。这些信息对于监控和优化复制性能以及确保数据一致性非常重要。


replication_applier_status_by_coordinator
这个表名为 replication_applier_status_by_coordinator,是 MySQL Performance Schema 中的一个表,用于记录复制应用者(replication applier)的状态信息,特别是与协调者(coordinator)相关的状态。以下是表中每一列的含义:
- CHANNEL_NAME: 复制通道名称,表示复制通道的名称。
- READ_ID: 线程 ID,表示复制线程的唯一标识符。
- ERVICE_STATE: 服务状态,表示复制通道的当前状态,可以是
ON或OFF。 - LAST_ERROR_NUMBER: 最后错误号,表示复制通道的最后错误号。
- LAST_ERROR_MESSAGE: 最后错误消息,表示复制通道的最后错误消息。
- LAST_ERROR_TIMESTAMP: 最后错误时间戳,表示复制通道的最后错误时间。
- LAST_PROCESSED_TRANSACTION: 最后处理的事务,表示复制通道的最后处理的事务。
- LAST_PROCESSED_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMP: 最后处理的事务的原始提交时间戳,表示复制通道的最后处理的事务的原始提交时间。
- LAST_PROCESSED_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMP: 最后处理的事务的立即提交时间戳,表示复制通道的最后处理的事务的立即提交时间。
- LAST_PROCESSED_TRANSACTION_START_BUFFER_TIMESTAMP: 最后处理的事务的开始时间戳,表示复制通道的最后处理的事务的开始时间。
- LAST_PROCESSED_TRANSACTION_END_BUFFER_TIMESTAMP: 最后处理的事务的结束时间戳,表示复制通道的最后处理的事务的结束时间。
- ROCESSING_TRANSACTION: 正在处理的事务,表示复制通道当前正在处理的事务。
- ROCESSING_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMP: 正在处理的事务的原始提交时间戳,表示复制通道的正在处理的事务的原始提交时间。
- ROCESSING_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMP: 正在处理的事务的立即提交时间戳,表示复制通道的正在处理的事务的立即提交时间。
- ROCESSING_TRANSACTION_START_BUFFER_TIMESTAMP: 正在处理的事务的开始缓冲时间戳,表示复制通道的正在处理的事务的开始缓冲时间。
这个表通过记录复制应用者的状态信息,帮助数据库管理员了解和监控数据库的性能,特别是了解复制通道的状态和事务处理情况。通过这些信息,管理员可以识别出性能瓶颈和优化点,例如,如果某个通道的 SERVICE_STATE 为 OFF,可能表明存在复制问题,需要进一步调查和优化。


replication_applier_status_by_worker
这个表名为 replication_applier_status_by_worker,是 MySQL Performance Schema 中的一个表,用于记录复制应用者(replication applier)的工作线程状态信息。以下是表中每一列的含义:
- CHANNEL_NAME: 复制通道名称,表示复制通道的名称。
- READ_ID: 工作线程 ID,表示复制线程的唯一标识符。
- ERVICE_STATE: 服务状态,表示复制通道的当前状态,可以是
ON或OFF。 - LAST_ERROR_NUMBER: 最后错误号,表示复制通道的最后错误号。
- LAST_ERROR_MESSAGE: 最后错误消息,表示复制通道的最后错误消息。
- LAST_ERROR_TIMESTAMP: 最后错误时间戳,表示复制通道的最后错误时间。
- LAST_APPLIED_TRANSACTION: 最后应用的事务,表示复制通道的最后应用的事务。
- LAST_PROCESSED_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMP: 最后处理的事务的原始提交时间戳,表示复制通道的最后处理的事务的原始提交时间。
- LAST_APPLIED_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMP: 最后应用的事务的立即提交时间戳,表示复制通道的最后应用的事务的立即提交时间。
- LAST_APPLIED_TRANSACTION_START_APPLY_TIMESTAMP: 最后应用的事务的开始应用时间戳,表示复制通道的最后应用的事务的开始时间。
- _APPLIED_TRANSACTION_END_APPLY_TIMESTAMP: 最后应用的事务的结束时间戳,表示复制通道的最后应用的事务的结束时间。
- ROCESSING_TRANSACTION: 正在处理的事务,表示复制通道当前正在处理的事务。
- ROCESSING_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMP: 正在处理的事务的原始提交时间戳,表示复制通道的正在处理的事务的原始提交时间。
- ROCESSING_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMP: 正在处理的事务的立即提交时间戳,表示复制通道的正在处理的事务的立即提交时间。
- ROCESSING_TRANSACTION_START_BUFFER_TIMESTAMP: 正在处理的事务的开始缓冲时间戳,表示复制通道的正在处理的事务的开始缓冲时间。
- ROCESSING_TRANSACTION_END_BUFFER_TIMESTAMP: 正在处理的事务的结束缓冲时间戳,表示复制通道的正在处理的事务的结束缓冲时间。
- LAST_APPLIED_TRANSACTION_RETRIES_COUNT: 最后应用的事务重试次数,表示复制通道的最后应用的事务重试次数。
- LAST_APPLIED_TRANSACTION_LAST_TRANSIENT_ERROR_NUMBER: 最后应用的事务的最后错误号,表示复制通道的最后应用的事务的错误号。
- LAST_APPLIED_TRANSACTION_LAST_TRANSIENT_ERROR_TIMESTAMP: 最后应用的事务的最后错误时间戳,表示复制通道的最后应用的事务的错误时间。
- ** APPLYING_TRANSACTION_RETRIES_COUNT**: 应用的事务重试次数,表示复制通道的应用的事务重试次数。
- ** APPLYING_TRANSACTION_LAST_TRANSIENT_ERROR_NUMBER**: 应用的事务的最后错误号,表示复制通道的应用事务的错误号。
- ** APPLYING_TRANSACTION_LAST_TRANSIENT_ERROR_MESSAGE**: 应用的事务的最后错误消息,表示复制通道的应用事务的最后错误消息。
- ** APPLYING_TRANSACTION_LAST_TRANSIENT_ERROR_TIMESTAMP**: 应用的事务的最后错误时间戳,表示复制通道的应用事务的最后错误时间。
这个表通过记录复制应用者的工作线程状态信息,帮助数据库管理员了解和监控数据库的性能,特别是了解复制通道的状态和事务处理情况。通过这些信息,管理员可以识别出性能瓶颈和优化点,例如,如果某个通道的 SERVICE_STATE 为 OFF,可能表明存在性能问题,需要进一步调查和优化。



replication_asynchronous_connection_failover
这个表名为 replication_asynchronous_connection_failover,是 MySQL Performance Schema 中的一个表,用于记录异步复制连接失败时的配置信息。以下是表中每一列的含义:
- CHANNEL_NAME: 通道名称,表示复制通道的名称,用于连接源和复制者。
- SOURCE_HOST: 源主机名,表示复制通道尝试连接的源主机名。
- PORT: 端口,表示复制通道尝试切换到的端口号。
- NETWORK_NAMESPACE: 网络命名空间,表示复制通道尝试切换到的网络命名空间。
- WEIGHT: 权重,表示复制通道在发生故障时尝试切换连接的顺序,权重可以设置在 1 到 100 之间,100 表示最高权重,1 表示最低权重。
- MANAGED_NAME: 管理名称,表示服务器所属的组的名称。
这个表通过记录异步复制连接失败时的配置信息,帮助数据库管理员了解和管理系统的复制配置。例如,可以通过这个表查看复制通道的切换顺序和权重设置,以及在发生故障时尝试连接的源主机和端口。这些信息对于监控和优化复制性能以及确保数据一致性非常重要。

replication_asynchronous_connection_failover_managed
这个表名为 replication_asynchronous_connection_failover_managed,是 MySQL Performance Schema 中的一个表,用于记录异步复制连接失败时的配置信息。以下是表中每一列的含义:
- CHANNEL_NAME: 通道名称,表示复制通道的名称,用于连接源和复制者。
- MANAGED_NAME: 管理名称,表示需要管理的源的名称。
- MANAGED_TYPE: 管理类型,表示管理的类型,可以是
GroupReplication。 - CONFIGURATION: 配置,表示管理组的配置数据,用于帮助管理组。对于
GroupReplication类型,配置值应包含{"Primary_weight": 80, "Secondary_weight": 60},以便将权重设置为组的主权重为 80,其余成员的权重为 60。
这个表通过记录异步复制连接失败时的配置信息,帮助数据库管理员了解和管理系统的复制配置。例如,可以通过这个表查看复制通道的管理名称、管理的名称以及管理类型。这些信息对于监控和优化复制性能以及确保数据一致性非常重要。

replication_connection_configuration
这个表名为 replication_connection_configuration,是 MySQL Performance Schema 中的一个表,用于记录复制连接的配置信息。以下是表中每一列的含义:
- CHANNEL_NAME: 复制通道名称,表示复制通道的名称,用于连接源和复制者。
- HOST: 主机名,表示复制通道连接的主机。
- PORT: 端口号,表示复制通道连接的端口号。
- NETWK_INTERFACE: 网络接口,表示复制通道使用的网络接口。
- AUTO_POSITION: 自动位置枚举,表示是否启用自动位置(
表示启用,0` 表示禁用)。 - SSL_ALLOWED: SSL 允许,表示是否允许 SSL 连接,可以是
YES、NO或IGNORED。 - SSL_CA_FILE: SSL 证书文件,表示 SSL 证书文件的路径。
- SSL_CA_PATH: SSL 证书路径,表示 SSL 路径。
- SSL_CERTIFICATE: SSL 证书,表示 SSL 证书。
- SSL_KEY: SSL 密钥,表示 SSL 密钥。
- SSL_VERIFY_SERVER_CERTIFICATE: SSL 验证服务器证书,表示是否验证服务器证书,可以是
YES或NO。 - SSL_CRL_FILE: SSL 证书文件,表示 SSL 证书文件。
- SSL_CRL_PATH: SSL 证书路径,表示 SSL 路径。
- CONNECTION_RETRY_INTERVAL: 连接重试间隔,表示重试连接的间隔时间(以秒为单位)。
- HEARTBEATBEAT_INTERVAL: 心跳间隔,表示心跳间隔,表示发送心跳包的间隔时间(以秒为单位)。
- PUBLIC_KEY_PATH: 公钥路径,表示公钥文件的路径。
- GET_PUBLIC_KEY: 获取公钥,表示是否启用公钥。
- NETWORK_KEY: 网络密钥,表示网络密钥。
- COMPRESSION_ALGORITHM: 压缩算法,表示用于主从服务器之间数据传输的压缩算法。
- ZSTD_COMPRESSION_LEVEL: 压缩级别,表示与压缩算法关联的压缩级别。
- TLS_CIPHER: TLS 密码套件,表示使用的 TLS 密码套件。
- SOURCE_AUTO_FAILOVER: 源自动故障转移,表示是否启用源自动故障转移,可以是
1或0。 - GRID_ONLY: GTID 仅,表示该通道是否仅使用 GTID 且不保留位置。
这个表通过记录复制连接的配置信息,帮助数据库管理员了解和管理系统的复制配置。例如,可以通过这个表查看复制通道的连接信息、SSL 设置以及网络配置。这些信息对于监控和优化复制性能以及确保数据一致性非常重要。


replication_connection_status
这个表名为 replication_connection_status,是 MySQL Performance Schema 中的一个表,用于记录复制连接的状态信息。以下是表中每一列的含义:
- CHANNEL_NAME: 复制通道名称,表示复制通道的名称。
- GROUP_NAME: 组名称,表示复制通道所属的组。
- GROUP_UUID: 组唯一标识符,表示复制组的唯一标识符。
- THREAD_ID: 线程 ID,表示复制线程的唯一标识符。
- ERVICE_STATE: 服务状态,表示复制通道的当前服务状态,可以是
ON或OFF。 - COUNT_RECEIVED_HEARTBEATBE: 心跳计数,表示接收到心跳信号的次数。
- LAST_HEARTBE_TIMESTAMP: 最后心跳时间戳,表示接收到心跳信号的时间。
- RECEIVED_TRANSACTION_SET: 接收到的事务集,表示复制通道接收到的事务集。
- LAST_ERROR_NUMBER: 最后错误号,表示复制通道的最后错误号。
- LAST_ERROR_MESSAGE: 最后错误消息,表示复制通道的最后错误消息。
- LAST_ERROR_TIMESTAMP: 最后错误时间戳,表示复制通道的最后错误时间。
- LAST_QUEED_TRANSACTION: 最后排队的事务,表示复制通道的最后排队的事务。
- LAST_QUEUED_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMP: 最后排队的事务的原始提交时间戳,表示复制通道的最后排队的事务的原始提交时间。
- LAST_QUEUED_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMP: 最后排队的事务的立即提交时间戳,表示复制通道的最后排队的事务的立即提交时间。
- LAST_QUEUED_TRANSACTION_START_QUEUE_TIMESTAMP: 最后排队的事务的开始时间戳,表示复制通道的最后排队的事务的开始时间。
- LAST_QUEUED_TRANSACTION_END_QUEUE_TIMESTAMP: 最后排队的事务的结束时间戳,表示复制通道的最后排队的事务的结束时间。
- QUEUING_TRANSACTION: 正在排队的事务,表示复制通道当前正在排队的事务。
- QUEUING_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMP: 正在排队的事务的原始提交时间戳,表示复制通道的正在排队的事务的原始提交时间。
- QUEUING_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMP: 正在排队的事务的立即提交时间戳,表示复制通道的正在排队的事务的立即提交时间。
这个表通过记录复制连接的状态信息,帮助数据库管理员了解和监控数据库的性能,特别是了解复制通道的状态和事务处理情况。通过这些信息,管理员可以识别出性能瓶颈和优化点,例如,如果某个通道的 SERVICE_STATE 为 OFF,可能表明存在性能问题,需要进一步调查和优化。


replication_group_member_stats
这个表名为 replication_group_member_stats,是 MySQL Performance Schema 中的一个表,用于记录组复制中每个成员的状态信息。以下是表中每一列的含义:
- CHANNEL_NAME: 复制通道名称,表示复制通道的名称,用于连接源和复制者。
- VIEW_ID: 视图 ID,表示复制视图的标识符。
- EMBER_ID: 成员 ID,表示复制组中成员的唯一标识符。
- COUNT_TRANSACTIONS_IN_QUEUE: 队列事务在队列,表示复制通道中等待的事务数量。
- COUNT_TRANSACTIONS_CHECKED: 事务检查次数,表示复制通道检查的事务数量。
- COUNT_CONFLICTS_DETECTED: 冲突检测到的冲突次数,表示复制通道检测到的冲突数量。
- COUNT_TRANSACTIONS_ROWS_VALIDATING: 验证行数,表示复制通道中验证的事务行数。
- TRANSACTIONS_COMMITTED_ALL_MEMBERS: 所有成员提交的事务,表示所有成员提交的事务。
- LAST_CONFLICT_FREE_TRANSACTION: 无冲突事务,表示复制通道的无冲突事务。
- COUNT_TRANSACTIONS_REMOTE_IN_APPLIER_QUEUE: 远程应用队列,表示复制通道中等待应用的远程事务数量。
- COUNT_TRANSACTIONS_REMOTE_APPLIED: 远程应用的事务,表示复制通道中已应用的远程事务数量。
- COUNT_TRANSACTIONS_LOCAL_PROPOSED: 本地提出的事务,表示复制通道中本地提出的事务数量。
- COUNT_TRANSACTIONS_LOCAL_ROLLBACK: 本地回滚事务,表示复制通道中本地回滚的事务数量。
这个表通过记录复制组中每个成员的状态信息,帮助数据库管理员了解和监控数据库的性能,特别是了解复制组中每个成员的事务处理情况。通过这些信息可以识别出性能瓶颈和优化点,例如,如果某个成员的 COUNT_TRANSACTIONS_IN_QUEUE 值特别高,可能表明存在性能问题,需要进一步调查和优化。


replication_group_members
这个表名为 replication_group_members,是 MySQL Performance Schema 中的一个表,用于记录复制组中每个成员的信息。以下是表中每一列的含义:
- CHANNEL_NAME: 复制通道名称,表示复制通道的名称,用于连接源和复制者。
- EMBER_ID: 成员 ID,表示复制组中成员的唯一标识符。
- EMBER_HOST: 成员主机名,表示复制成员的主机名。
- EMBER_PORT: 成员端口,表示复制成员的端口号。
- EMBER_STATE: 成员状态,表示复制成员的当前状态。
- EMBER_VERSION: 成员版本,表示复制成员的版本信息。
- EMBER_COMMUNICATION_STACK: 成员通信栈,表示复制成员使用的通信栈。
这个表通过记录复制组中每个成员的信息,帮助数据库管理员了解和监控数据库的复制配置。例如,可以通过这个表查看复制组中每个成员的连接信息、状态以及版本信息。这些信息对于监控和优化复制性能以及确保数据一致性非常重要。


rwlock_instances
这个表名为 rwlock_instances,是 MySQL Performance Schema 中的一个表,用于记录数据库中读写锁(rwlock)的实例信息。以下是表中每一列的含义:
NAME: 锁名称,表示读写锁的名称,用于唯一标识一个锁实例。OBJECT_INSTANCE_BEGIN: 对象实例开始,表示锁实例在内存中的起始地址。WRITE_LOCKED_BY_THREAD_ID: 写锁线程ID,表示当前持有该锁写权限的线程ID,如果当前没有线程持有写锁,则该值为NULL。READ_LOCKED_BY_COUNT: 读锁线程数量,表示当前持有该锁读权限的线程数量。
这个表通过记录读写锁的实例信息,帮助数据库管理员了解和监控数据库中锁的使用情况。例如,可以通过这个表查看哪些锁被使用,哪些线程持有这些锁,以及锁的使用频率等信息。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。


session_account_connect_attrs
这个表名为 session_account_connect_attrs,是 MySQL Performance Schema 中的一个表,用于记录每个会话连接的账户属性信息。以下是表中每一列的含义:
PROCESSLIST_ID: 会话 ID,表示会话的唯一标识符。ATTR_NAME: 属性名称,表示连接属性的名称。ATTR_VALUE: 属性值,表示连接属性的具体值。ORDINAL_POSITION: 属性顺序,表示属性值的顺序位置。
这个表通过记录会话连接的属性信息,帮助数据库管理员了解和监控数据库的连接配置。


session_connect_attrs
这个表名为 session_connect_attrs,是 MySQL Performance Schema 中的一个表,用于记录会话连接的属性信息。以下是表中每一列的含义:
PROCESSLIST_ID: 会话 ID,表示会话的唯一标识符,用于关联到performance_schema.processlist表中的相应会话。ATTR_NAME: 属性名称,表示连接属性的名称,如用户名、主机名等。ATTR_VALUE: 属性值,表示连接属性的具体值,与ATTR_NAME列中的属性名称相对应。ORDINAL_POSITION: 属性顺序,表示属性值的顺序位置,用于标识属性在连接属性列表中的位置。
这个表通过记录会话连接的属性信息,帮助数据库管理员了解和监控数据库的连接配置。

session_status
这个表名为 session_status,是 MySQL Performance Schema 中的一个表,用于记录当前会话的状态信息。以下是表中每一列的含义:
VARIABLE_NAME: 变量名称,表示会话状态变量的名称,用于唯一标识一个会话状态变量。VARIABLE_VALUE: 变量值,表示会话状态变量的具体值。
这个表通过记录会话的状态信息,帮助数据库管理员了解当前会话的运行状态。

session_variables
这个表名为 session_variables,是 MySQL Performance Schema 中的一个表,用于记录当前会话的变量信息。以下是表中每一列的含义:
VARIABLE_NAME: 变量名称,表示会话变量的名称,用于唯一标识一个会话变量。VARIABLE_VALUE: 变量值,表示会话变量的具体值。
这个表通过记录会话的变量信息,帮助数据库管理员了解当前会话的配置和状态

setup_actors
这个表名为 setup_actors,是 MySQL Performance Schema 中的一个表,用于存储设置的执行者信息。以下是表中每一列的含义:
HOST: 主机,表示执行者的主机名,用于标识连接到数据库服务器的主机。USER: 用户,表示执行者的用户名,用于标识执行数据库操作的用户。ROLE: 角色,表示执行者的角色,用于标识用户在数据库中的角色。ENABLED: 启用状态,表示该执行者是否启用,取值为 'YES' 或 'NO'。HISTORY: 历史记录,表示是否记录该执行者的历史信息,取值为 'YES' 或 'NO'。
这个表通过记录执行者的信息,帮助数据库管理员了解和监控数据库操作的执行者。例如,可以通过这个表查看哪些用户在执行数据库操作,他们的角色是什么,以及这些操作是否被记录。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。

setup_consumers
这个表名为 setup_consumers,是 MySQL Performance Schema 中的一个表,用于记录设置的消费者信息。以下是表中每一列的含义:
NAME: 名称,表示消费者的名称,用于唯一标识一个消费者。ENABLED: 启用状态,表示该消费者是否启用,取值为 'YES' 或 'NO'。
这个表通过记录消费者的启用状态,帮助数据库管理员了解和监控数据库中消费者的状态。例如,可以通过这个表查看哪些消费者是启用的,哪些是禁用的。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。

setup_instruments
这个表名为 setup_instruments,是 MySQL Performance Schema 中的一个表,用于配置和存储性能监控工具(instruments)的设置。以下是表中每一列的含义:
NAME: 名称,表示性能监控工具的名称,用于唯一标识一个监控工具。ENABLED: 启用状态,表示该监控工具是否启用,取值为 'YES' 或 'NO'。TIMED: 是否定时,表示该监控工具是否定时运行,取值为 'YES' 或 'NO'。PROPERTIES: 属性,表示该监控工具的属性,如 'singleton'(单例)、'progress'(进度)、'user'(用户)、'global_statistics'(全局统计)、'mutable'(可变)、'controlled_by_default'(默认受控)。FLAGS: 标志,表示该监控工具的标志,如 'controlled'(受控)。VOLATILITY: 波动性,表示该监控工具的波动性,取值为一个整数。DOCUMENTATION: 文档,表示该监控工具的文档描述,类型为长文本。
这个表通过记录性能监控工具的配置信息,帮助数据库管理员了解和控制数据库性能监控工具的行为。例如,可以通过这个表启用或禁用特定的监控工具,设置它们的运行频率,以及查看它们的属性和文档描述。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。


setup_objects
这个表名为 setup_objects,是 MySQL Performance Schema 中的一个表,用于配置和存储数据库对象的监控设置。以下是表中每一列的含义:
OBJECT_TYPE: 对象类型,表示被监控的对象类型,可以是 'EVENT'、'FUNCTION'、'PROCEDURE'、'TABLE' 或 'TRIGGER'。OBJECT_SCHEMA: 对象模式,表示对象所在的数据库模式,默认为 '%' 表示所有模式。OBJECT_NAME: 对象名称,表示被监控的具体对象名称,默认为 '%' 表示所有对象。ENABLED: 启用状态,表示该监控设置是否启用,取值为 'YES' 或 'NO',默认为 'YES'。TIMED: 是否定时,表示该监控设置是否定时运行,取值为 'YES' 或 'NO',默认为 'YES'。
这个表通过记录数据库对象的监控配置,帮助数据库管理员了解和控制数据库中对象的监控行为。例如,可以通过这个表启用或禁用特定的对象监控,设置它们的监控频率。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。


setup_threads
这个表名为 setup_threads,是 MySQL Performance Schema 中的一个表,用于配置和存储线程的监控设置。以下是表中每一列的含义:
NAME: 名称,表示线程的名称,用于唯一标识一个线程。ENABLED: 启用状态,表示该线程监控是否启用,取值为 'YES' 或 'NO'。HISTORY: 历史记录,表示是否记录该线程的历史信息,取值为 'YES' 或 'NO'。PROPERTIES: 属性,表示线程的属性,如 'singleton'(单例)、'user'(用户)。VOLATILITY: 波动性,表示线程监控的波动性,取值为一个整数。DOCUMENTATION: 文档,表示该线程的文档描述,类型为长文本。
这个表通过记录线程的监控配置,帮助数据库管理员了解和控制数据库中线程的行为。例如,可以通过这个表启用或禁用特定的线程监控,设置它们的监控频率和记录历史信息。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。

socket_instances
这个表名为 socket_instances,是 MySQL Performance Schema 中的一个表,用于记录数据库服务器的套接字(socket)实例信息。以下是表中每一列的含义:
EVENT_NAME: 事件名称,表示套接字事件的名称,用于唯一标识一个套接字事件。OBJECT_INSTANCE_BEGIN: 对象实例开始,表示套接字实例在内存中的起始地址。THREAD_ID: 线程ID,表示与该套接字关联的线程ID。SOCKET_ID: 套接字ID,表示套接字的唯一标识符。IP: IP地址,表示与套接字关联的IP地址。PORT: 端口,表示与套接字关联的端口号。STATE: 状态,表示套接字的当前状态,可以是 'IDLE'(空闲)或 'ACTIVE'(活跃)。
这个表通过记录套接字实例的信息,帮助数据库管理员了解和监控数据库服务器的网络连接状态。例如,可以通过这个表查看当前活跃的连接、连接的IP地址和端口号、以及连接的状态等信息。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。

socket_summary_by_event_name
这个表名为 socket_summary_by_event_name,是 MySQL Performance Schema 中的一个表,用于按事件名称汇总套接字的性能数据。以下是表中每一列的含义:
EVENT_NAME: 事件名称,表示套接字事件的名称,用于唯一标识一个套接字事件。COUNT_STAR: 总次数,表示该事件被触发的总次数。SUM_TIMER_WAIT: 总等待时间,表示所有线程等待该事件的总时间。MIN_TIMER_WAIT: 最小等待时间,表示所有线程等待该事件的最小时间。AVG_TIMER_WAIT: 平均等待时间,表示所有线程等待该事件的平均时间。MAX_TIMER_WAIT: 最大等待时间,表示所有线程等待该事件的最大时间。COUNT_READ: 读取次数,表示该事件读取操作的总次数。SUM_TIMER_READ: 总读取时间,表示所有线程读取操作的总时间。MIN_TIMER_READ: 最小读取时间,表示所有线程读取操作的最小时间。AVG_TIMER_READ: 平均读取时间,表示所有线程读取操作的平均时间。MAX_TIMER_READ: 最大读取时间,表示所有线程读取操作的最大时间。SUM_NUMBER_OF_BYTES_READ: 总读取字节数,表示所有线程读取操作的总字节数。COUNT_WRITE: 写入次数,表示该事件写入操作的总次数。SUM_TIMER_WRITE: 总写入时间,表示所有线程写入操作的总时间。MIN_TIMER_WRITE: 最小写入时间,表示所有线程写入操作的最小时间。AVG_TIMER_WRITE: 平均写入时间,表示所有线程写入操作的平均时间。MAX_TIMER_WRITE: 最大写入时间,表示所有线程写入操作的最大时间。SUM_NUMBER_OF_BYTES_WRITE: 总写入字节数,表示所有线程写入操作的总字节数。COUNT_MISC: 其他次数,表示该事件其他操作的总次数。SUM_TIMER_MISC: 总其他时间,表示所有线程其他操作的总时间。MIN_TIMER_MISC: 最小其他时间,表示所有线程其他操作的最小时间。AVG_TIMER_MISC: 平均其他时间,表示所有线程其他操作的平均时间。MAX_TIMER_MISC: 最大其他时间,表示所有线程其他操作的最大时间。
这个表通过汇总套接字事件的性能数据,帮助数据库管理员了解和监控数据库服务器的网络连接性能。例如,可以通过这个表查看不同事件的等待时间、读取和写入操作的频率和耗时等信息。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。


socket_summary_by_instance
这个表名为 socket_summary_by_instance,是 MySQL Performance Schema 中的一个表,用于按实例汇总套接字的性能数据。以下是表中每一列的含义:
EVENT_NAME: 事件名称,表示套接字事件的名称,用于唯一标识一个套接字事件。OBJECT_INSTANCE_BEGIN: 对象实例开始,表示套接字实例在内存中的起始地址。COUNT_STAR: 总次数,表示该事件被触发的总次数。SUM_TIMER_WAIT: 总等待时间,表示所有线程等待该事件的总时间。MIN_TIMER_WAIT: 最小等待时间,表示所有线程等待该事件的最小时间。AVG_TIMER_WAIT: 平均等待时间,表示所有线程等待该事件的平均时间。MAX_TIMER_WAIT: 最大等待时间,表示所有线程等待该事件的最大时间。COUNT_READ: 读取次数,表示该事件读取操作的总次数。SUM_TIMER_READ: 总读取时间,表示所有线程读取操作的总时间。MIN_TIMER_READ: 最小读取时间,表示所有线程读取操作的最小时间。AVG_TIMER_READ: 平均读取时间,表示所有线程读取操作的平均时间。MAX_TIMER_READ: 最大读取时间,表示所有线程读取操作的最大时间。SUM_NUMBER_OF_BYTES_READ: 总读取字节数,表示所有线程读取操作的总字节数。COUNT_WRITE: 写入次数,表示该事件写入操作的总次数。SUM_TIMER_WRITE: 总写入时间,表示所有线程写入操作的总时间。MIN_TIMER_WRITE: 最小写入时间,表示所有线程写入操作的最小时间。AVG_TIMER_WRITE: 平均写入时间,表示所有线程写入操作的平均时间。MAX_TIMER_WRITE: 最大写入时间,表示所有线程写入操作的最大时间。SUM_NUMBER_OF_BYTES_WRITE: 总写入字节数,表示所有线程写入操作的总字节数。COUNT_MISC: 其他次数,表示该事件其他操作的总次数。SUM_TIMER_MISC: 总其他时间,表示所有线程其他操作的总时间。MIN_TIMER_MISC: 最小其他时间,表示所有线程其他操作的最小时间。AVG_TIMER_MISC: 平均其他时间,表示所有线程其他操作的平均时间。MAX_TIMER_MISC: 最大其他时间,表示所有线程其他操作的最大时间。
这个表通过汇总套接字实例的性能数据,帮助数据库管理员了解和监控数据库服务器的网络连接性能。例如,可以通过这个表查看不同实例的等待时间、读取和写入操作的频率和耗时等信息。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。


status_by_account
这个表名为 status_by_account,是 MySQL Performance Schema 中的一个表,用于记录数据库账户的状态信息。以下是表中每一列的含义:
USER: 用户名,表示数据库用户的名称。HOST: 主机,表示用户连接到数据库服务器的主机名。VARIABLE_NAME: 变量名称,表示账户状态变量的名称。VARIABLE_VALUE: 变量值,表示账户状态变量的具体值。
这个表通过记录账户的状态信息,帮助数据库管理员了解和监控数据库账户的活动和性能。

status_by_host
这个表名为 status_by_host,是 MySQL Performance Schema 中的一个表,用于记录按主机分类的数据库会话状态信息。以下是表中每一列的含义:
HOST: 主机,表示连接到数据库服务器的主机名。VARIABLE_NAME: 变量名称,表示会话状态变量的名称。VARIABLE_VALUE: 变量值,表示会话状态变量的具体值。
这个表通过记录不同主机的会话状态信息,帮助数据库管理员了解和监控来自不同主机的数据库会话的活动和性能。

status_by_thread
这个表名为 status_by_thread,是 MySQL Performance Schema 中的一个表,用于记录按线程分类的数据库会话状态信息。以下是表中每一列的含义:
THREAD_ID: 线程ID,表示会话的唯一标识符。VARIABLE_NAME: 变量名称,表示会话状态变量的名称。VARIABLE_VALUE: 变量值,表示会话状态变量的具体值。
这个表通过记录线程的状态信息,帮助数据库管理员了解和监控数据库中各个线程的活动和性能。

status_by_user
这个表名为 status_by_user,是 MySQL Performance Schema 中的一个表,用于记录按用户分类的数据库会话状态信息。以下是表中每一列的含义:
USER: 用户名,表示数据库用户的名称。VARIABLE_NAME: 变量名称,表示会话状态变量的名称。VARIABLE_VALUE: 变量值,表示会话状态变量的具体值。
这个表通过记录用户的状态信息,帮助数据库管理员了解和监控数据库中各个用户的活动和性能。例如,可以通过这个表查看每个用户接收和发送的字节数、准备的语句、创建的临时磁盘表和内存表、以及各种处理器操作的次数等信息。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。

table_handles
这个表名为 table_handles,是 MySQL Performance Schema 中的一个表,用于记录数据库中表句柄的信息。以下是表中每一列的含义:
OBJECT_TYPE: 对象类型,表示被监控的对象类型,例如 'TABLE'。OBJECT_SCHEMA: 对象模式,表示对象所在的数据库模式。OBJECT_NAME: 对象名称,表示被监控的具体对象名称。OBJECT_INSTANCE_BEGIN: 对象实例开始,表示对象实例在内存中的起始地址。OWNER_THREAD_ID: 所有者线程ID,表示拥有该对象句柄的线程ID。OWNER_EVENT_ID: 所有者事件ID,表示拥有该对象句柄的事件ID。INTERNAL_LOCK: 内部锁,表示内部锁的名称。EXTERNAL_LOCK: 外部锁,表示外部锁的名称。
这个表通过记录表句柄的信息,帮助数据库管理员了解和监控数据库中对象的访问情况。例如,可以通过这个表查看哪些线程正在访问特定的表,以及这些访问是否涉及到锁定操作。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。


table_io_waits_summary_by_index_usage
这个表名为 table_io_waits_summary_by_index_usage,是 MySQL Performance Schema 中的一个表,用于汇总数据库表的索引使用情况和等待事件。以下是表中每一列的含义:
OBJECT_TYPE: 对象类型,表示被监控的对象类型,例如 'TABLE'。OBJECT_SCHEMA: 对象模式,表示对象所在的数据库模式。OBJECT_NAME: 对象名称,表示被监控的具体对象名称。INDEX_NAME: 索引名称,表示对象上使用的索引名称。COUNT_STAR: 总次数,表示该索引被访问的总次数。SUM_TIMER_WAIT: 总等待时间,表示所有线程等待该索引的总时间。MIN_TIMER_WAIT: 最小等待时间,表示所有线程等待该索引的最小时间。AVG_TIMER_WAIT: 平均等待时间,表示所有线程等待该索引的平均时间。MAX_TIMER_WAIT: 最大等待时间,表示所有线程等待该索引的最大时间。COUNT_READ: 读取次数,表示该索引读取操作的总次数。SUM_TIMER_READ: 总读取时间,表示所有线程读取操作的总时间。MIN_TIMER_READ: 最小读取时间,表示所有线程读取操作的最小时间。AVG_TIMER_READ: 平均读取时间,表示所有线程读取操作的平均时间。MAX_TIMER_READ: 最大读取时间,表示所有线程读取操作的最大时间。COUNT_WRITE: 写入次数,表示该索引写入操作的总次数。SUM_TIMER_WRITE: 总写入时间,表示所有线程写入操作的总时间。MIN_TIMER_WRITE: 最小写入时间,表示所有线程写入操作的最小时间。AVG_TIMER_WRITE: 平均写入时间,表示所有线程写入操作的平均时间。MAX_TIMER_WRITE: 最大写入时间,表示所有线程写入操作的最大时间。COUNT_FETCH: 获取次数,表示该索引获取操作的总次数。SUM_TIMER_FETCH: 总获取时间,表示所有线程获取操作的总时间。MIN_TIMER_FETCH: 最小获取时间,表示所有线程获取操作的最小时间。AVG_TIMER_FETCH: 平均获取时间,表示所有线程获取操作的平均时间。MAX_TIMER_FETCH: 最大获取时间,表示所有线程获取操作的最大时间。COUNT_INSERT: 插入次数,表示该索引插入操作的总次数。SUM_TIMER_INSERT: 总插入时间,表示所有线程插入操作的总时间。MIN_TIMER_INSERT: 最小插入时间,表示所有线程插入操作的最小时间。AVG_TIMER_INSERT: 平均插入时间,表示所有线程插入操作的平均时间。MAX_TIMER_INSERT: 最大插入时间,表示所有线程插入操作的最大时间。COUNT_UPDATE: 更新次数,表示该索引更新操作的总次数。SUM_TIMER_UPDATE: 总更新时间,表示所有线程更新操作的总时间。MIN_TIMER_UPDATE: 最小更新时间,表示所有线程更新操作的最小时间。AVG_TIMER_UPDATE: 平均更新时间,表示所有线程更新操作的平均时间。MAX_TIMER_UPDATE: 最大更新时间,表示所有线程更新操作的最大时间。COUNT_DELETE: 删除次数,表示该索引删除操作的总次数。SUM_TIMER_DELETE: 总删除时间,表示所有线程删除操作的总时间。MIN_TIMER_DELETE: 最小删除时间,表示所有线程删除操作的最小时间。AVG_TIMER_DELETE: 平均删除时间,表示所有线程删除操作的平均时间。MAX_TIMER_DELETE: 最大删除时间,表示所有线程删除操作的最大时间。
这个表通过汇总索引的使用情况和等待事件,帮助数据库管理员了解和监控数据库索引的性能。例如,可以通过这个表查看不同索引的等待时间、读取、写入、获取、插入、更新和删除操作的频率和耗时等信息。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。


table_io_waits_summary_by_table
这个表名为 table_io_waits_summary_by_table,是 MySQL Performance Schema 中的一个表,用于汇总数据库表的 I/O 等待事件。以下是表中每一列的含义:
OBJECT_TYPE: 对象类型,表示被监控的对象类型,例如 'TABLE'。OBJECT_SCHEMA: 对象模式,表示对象所在的数据库模式。OBJECT_NAME: 对象名称,表示被监控的具体对象名称。COUNT_STAR: 总次数,表示该表被访问的总次数。SUM_TIMER_WAIT: 总等待时间,表示所有线程等待该表的总时间。MIN_TIMER_WAIT: 最小等待时间,表示所有线程等待该表的最小时间。AVG_TIMER_WAIT: 平均等待时间,表示所有线程等待该表的平均时间。MAX_TIMER_WAIT: 最大等待时间,表示所有线程等待该表的最大时间。COUNT_READ: 读取次数,表示该表读取操作的总次数。SUM_TIMER_READ: 总读取时间,表示所有线程读取操作的总时间。MIN_TIMER_READ: 最小读取时间,表示所有线程读取操作的最小时间。AVG_TIMER_READ: 平均读取时间,表示所有线程读取操作的平均时间。MAX_TIMER_READ: 最大读取时间,表示所有线程读取操作的最大时间。COUNT_WRITE: 写入次数,表示该表写入操作的总次数。SUM_TIMER_WRITE: 总写入时间,表示所有线程写入操作的总时间。MIN_TIMER_WRITE: 最小写入时间,表示所有线程写入操作的最小时间。AVG_TIMER_WRITE: 平均写入时间,表示所有线程写入操作的平均时间。MAX_TIMER_WRITE: 最大写入时间,表示所有线程写入操作的最大时间。COUNT_FETCH: 获取次数,表示该表获取操作的总次数。SUM_TIMER_FETCH: 总获取时间,表示所有线程获取操作的总时间。MIN_TIMER_FETCH: 最小获取时间,表示所有线程获取操作的最小时间。AVG_TIMER_FETCH: 平均获取时间,表示所有线程获取操作的平均时间。MAX_TIMER_FETCH: 最大获取时间,表示所有线程获取操作的最大时间。COUNT_INSERT: 插入次数,表示该表插入操作的总次数。SUM_TIMER_INSERT: 总插入时间,表示所有线程插入操作的总时间。MIN_TIMER_INSERT: 最小插入时间,表示所有线程插入操作的最小时间。AVG_TIMER_INSERT: 平均插入时间,表示所有线程插入操作的平均时间。MAX_TIMER_INSERT: 最大插入时间,表示所有线程插入操作的最大时间。COUNT_UPDATE: 更新次数,表示该表更新操作的总次数。SUM_TIMER_UPDATE: 总更新时间,表示所有线程更新操作的总时间。MIN_TIMER_UPDATE: 最小更新时间,表示所有线程更新操作的最小时间。AVG_TIMER_UPDATE: 平均更新时间,表示所有线程更新操作的平均时间。MAX_TIMER_UPDATE: 最大更新时间,表示所有线程更新操作的最大时间。COUNT_DELETE: 删除次数,表示该表删除操作的总次数。SUM_TIMER_DELETE: 总删除时间,表示所有线程删除操作的总时间。MIN_TIMER_DELETE: 最小删除时间,表示所有线程删除操作的最小时间。AVG_TIMER_DELETE: 平均删除时间,表示所有线程删除操作的平均时间。MAX_TIMER_DELETE: 最大删除时间,表示所有线程删除操作的最大时间。
这个表通过汇总表的 I/O 等待事件,帮助数据库管理员了解和监控数据库表的性能。例如,可以通过这个表查看不同表的等待时间、读取、写入、获取、插入、更新和删除操作的频率和耗时等信息。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。


table_lock_waits_summary_by_table
这个表名为 table_lock_waits_summary_by_table,是 MySQL Performance Schema 中的一个表,用于汇总数据库表的锁定等待事件。以下是表中每一列的含义:
OBJECT_TYPE: 对象类型,表示被监控的对象类型,例如 'TABLE'。OBJECT_SCHEMA: 对象模式,表示对象所在的数据库模式。OBJECT_NAME: 对象名称,表示被监控的具体对象名称。COUNT_STAR: 总次数,表示该表被锁定等待的总次数。SUM_TIMER_WAIT: 总等待时间,表示所有线程等待该表的总时间。MIN_TIMER_WAIT: 最小等待时间,表示所有线程等待该表的最小时间。AVG_TIMER_WAIT: 平均等待时间,表示所有线程等待该表的平均时间。MAX_TIMER_WAIT: 最大等待时间,表示所有线程等待该表的最大时间。COUNT_READ: 读取次数,表示该表读取操作的总次数。SUM_TIMER_READ: 总读取时间,表示所有线程读取操作的总时间。MIN_TIMER_READ: 最小读取时间,表示所有线程读取操作的最小时间。AVG_TIMER_READ: 平均读取时间,表示所有线程读取操作的平均时间。MAX_TIMER_READ: 最大读取时间,表示所有线程读取操作的最大时间。COUNT_WRITE: 写入次数,表示该表写入操作的总次数。SUM_TIMER_WRITE: 总写入时间,表示所有线程写入操作的总时间。MIN_TIMER_WRITE: 最小写入时间,表示所有线程写入操作的最小时间。AVG_TIMER_WRITE: 平均写入时间,表示所有线程写入操作的平均时间。MAX_TIMER_WRITE: 最大写入时间,表示所有线程写入操作的最大时间。COUNT_READ_NORMAL: 正常读取次数,表示没有等待的读取操作总次数。SUM_TIMER_READ_NORMAL: 总正常读取时间,表示没有等待的读取操作总时间。MIN_TIMER_READ_NORMAL: 最小正常读取时间,表示所有线程正常读取操作的最小时间。AVG_TIMER_READ_NORMAL: 均正常读取时间,表示所有线程正常读取操作的平均时间。MAX_TIMER_READ_NORMAL: 最大正常读取时间,表示所有线程正常读取操作的最大时间。COUNT_READ_WITH_SHARED_LOCKS: 共享锁读取次数,表示持有共享锁时的读取操作总次数。SUM_TIMER_READ_WITH_SHARED_LOCKS: 总共享锁读取时间,表示持有共享锁时的读取操作总时间。MIN_TIMER_READ_WITH_SHARED_LOCKS: 最小共享锁读取时间,表示所有线程共享锁读取操作的最小时间。AVG_TIMER_READ_WITH_SHARED_LOCKS: 平均共享锁读取时间,表示所有线程共享锁读取操作的平均时间。MAX_TIMER_READ_WITH_SHARED_LOCKS: 最大共享锁读取时间,表示所有线程共享锁读取操作的最大时间。COUNT_READ_HIGH_PRIORITY: 高优先级读取次数,表示高优先级读取操作的总次数。SUM_TIMER_READ_HIGH_PRIORITY: 总高优先级读取时间,表示高优先级读取操作的总时间。MIN_TIMER_READ_HIGH_PRIORITY: 最小高优先级读取时间,表示所有线程高优先级读取操作的最小时间。AVG_TIMER_READ_HIGH_PRIORITY: 均高优先级读取时间,表示所有线程高优先级读取操作的平均时间。MAX_TIMER_READ_HIGH_PRIORITY: 最高优先级读取时间,表示所有线程高优先级读取操作的最大时间。COUNT_READ_NO_INSERT: 无插入读取次数,表示没有插入操作时的读取总次数。SUM_TIMER_READ_NO_INSERT: 总无插入读取时间,表示没有插入操作时的读取总时间。MIN_TIMER_READ_NO_INSERT: 最小无插入读取时间,表示所有线程无插入读取操作的最小时间。AVG_TIMER_READ_NO_INSERT: 均无插入读取时间,表示所有线程无插入读取操作的平均时间。MAX_TIMER_READ_NO_INSERT: 最大无插入读取时间,表示所有线程无插入读取操作的最大时间。COUNT_READ_EXTERNAL: 外部读取次数,表示外部读取操作的总次数。SUM_TIMER_READ_EXTERNAL: 总外部读取时间,表示外部读取操作的总时间。MIN_TIMER_READ_EXTERNAL: 最小外部读取时间,表示所有线程外部读取操作的最小时间。AVG_TIMER_READ_EXTERNAL: 均外部读取时间,表示所有线程外部读取操作的平均时间。MAX_TIMER_READ_EXTERNAL: 最大外部读取时间,表示所有线程外部读取操作的最大时间。COUNT_WRITE_ALLOW_WRITE: 允许写入次数,表示允许写入操作的总次数。SUM_TIMER_WRITE_ALLOW_WRITE: 总允许写入时间,表示允许写入操作的总时间。MIN_TIMER_WRITE_ALLOW_WRITE: 最小允许写入时间,表示所有线程允许写入操作的最小时间。AVG_TIMER_WRITE_ALLOW_WRITE: 均允许写入时间,表示所有线程允许写入操作的平均时间。MAX_TIMER_WRITE_ALLOW_WRITE: 最大允许写入时间,表示所有线程允许写入操作的最大时间。COUNT_WRITE_CONCURRENT_INSERT: 并发插入写入次数,表示并发插入操作的总次数。SUM_TIMER_WRITE_CONCURRENT_INSERT: 总并发插入写入时间,表示并发插入操作的总时间。MIN_TIMER_WRITE_CONCURRENT_INSERT: 最小并发插入写入时间,表示所有线程并发插入写入操作的最小时间。AVG_TIMER_WRITE_CONCURRENT_INSERT: 均并发插入写入时间,表示所有线程并发插入写入操作的平均时间。MAX_TIMER_WRITE_CONCURRENT_INSERT: 最大并发插入写入时间,表示所有线程并发插入写入操作的最大时间。COUNT_DELETE_LOW_PRIORITY: 低优先级删除次数,表示低优先级删除操作的总次数。SUM_TIMER_DELETE_LOW_PRIORITY: 总低优先级删除时间,表示低优先级删除操作的总时间。MIN_TIMER_DELETE_LOW_PRIORITY: 最小低优先级删除时间,表示所有线程低优先级删除操作的最小时间。AVG_TIMER_DELETE_LOW_PRIORITY: 均低优先级删除时间,表示所有线程低优先级删除操作的平均时间。MAX_TIMER_DELETE_LOW_PRIORITY: 最低优先级删除时间,表示所有线程低优先级删除操作的最大时间。COUNT_WRITE_LOW_PRIORITY: 低优先级写入次数,表示低优先级写入操作的总次数。SUM_TIMER_WRITE_LOW_PRIORITY: 总低优先级写入时间,表示低优先级写入操作的总时间。MIN_TIMER_WRITE_LOW_PRIORITY: 最小低优先级写入时间,表示所有线程低优先级写入操作的最小时间。AVG_TIMER_WRITE_LOW_PRIORITY: 均低优先级写入时间,表示所有线程低优先级写入操作的平均时间。MAX_TIMER_WRITE_LOW_PRIORITY: 最低优先级写入时间,表示所有线程低优先级写入操作的最大时间。COUNT_WRITE_NORMAL: 正常写入次数,表示正常写入操作的总次数。SUM_TIMER_WRITE_NORMAL: 总正常写入时间,表示正常写入操作的总时间。MIN_TIMER_WRITE_NORMAL: 最小正常写入时间,表示所有线程正常写入操作的最小时间。AVG_TIMER_WRITE_NORMAL: 均正常写入时间,表示所有线程正常写入操作的平均时间。MAX_TIMER_WRITE_NORMAL: 最大正常写入时间,表示所有线程正常写入操作的最大时间。
这个表通过汇总表的锁定等待事件,帮助数据库管理员了解和监控数据库表的锁定性能。例如,可以通过这个


threads
这个表名为 threads,是 MySQL Performance Schema 中的一个表,用于记录数据库线程的信息。以下是表中每一列的含义:
THREAD_ID: 线程ID,表示线程的唯一标识符。NAME: 名称,表示线程的名称。TYPE: 类型,表示线程的类型。PROCESSLIST_ID: 进程列表ID,表示线程所属进程的ID。PROCESSLIST_USER: 进程列表用户,表示线程所属进程的用户。PROCESSLIST_HOST: 进程列表主机,表示线程所属进程的主机名。PROCESSLIST_DB: 进程列表数据库,表示线程所属进程的数据库。PROCESSLIST_COMMAND: 进程列表命令,表示线程所属进程正在执行的命令。PROCESSLIST_TIME: 进程列表时间,表示线程所属进程已经运行的时间。PROCESSLIST_STATE: 进程列表状态,表示线程所属进程的当前状态。PROCESSLIST_INFO: 进程列表信息,表示线程所属进程的额外信息。PARENT_THREAD_ID: 父线程ID,表示线程的父线程ID。ROLE: 角色,表示线程的角色。INSTRUMENTED: 监控,表示线程是否被监控,取值为 'YES' 或 'NO'。HISTORY: 历史记录,表示线程是否记录历史信息,取值为 'YES' 或 'NO'。CONNECTION_TYPE: 连接类型,表示线程的连接类型。THREAD_OS_ID: 线程操作系统ID,表示线程在操作系统中的ID。RESOURCE_GROUP: 资源组,表示线程所属的资源组。EXECUTION_ENGINE: 执行引擎,表示线程使用的执行引擎,可以是 'PRIMARY' 或 'SECONDARY'。CONTROLLED_MEMORY: 控制内存,表示线程使用的控制内存大小。MAX_CONTROLLED_MEMORY: 最大控制内存,表示线程可以使用的最大控制内存大小。TOTAL_MEMORY: 总内存,表示线程使用的总内存大小。MAX_TOTAL_MEMORY: 最大总内存,表示线程可以使用的最大总内存大小。TELEMETRY_ACTIVE: 远程活动,表示线程是否远程活动,取值为 'YES' 或 'NO'。
这个表通过记录线程的信息,帮助数据库管理员了解和监控数据库中线程的活动和性能。例如,可以通过这个表查看每个线程的状态、运行时间、内存使用情况等信息。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。


tls_channel_status
这个表名为 tls_channel_status,是 MySQL Performance Schema 中的一个表,用于记录传输层安全(TLS)通道的状态信息。以下是表中每一列的含义:
CHANNEL: 通道,表示TLS通道的名称,用于唯一标识一个TLS通道。PROPERTY: 属性,表示TLS通道的属性名称。VALUE: 属性值,表示TLS通道属性的具体值。
这个表通过记录TLS通道的状态信息,帮助数据库管理员了解和监控数据库的TLS配置和性能。例如,可以通过这个表查看TLS通道是否启用、SSL接受重新协商的次数、SSL接受的数量、SSL客户端连接数、SSL上下文验证深度、SSL上下文验证模式、当前TLS证书和路径等信息。这些信息对于监控和优化数据库性能以及确保数据传输的安全性非常重要。

user_defined_functions
这个表名为 user_defined_functions,是 MySQL Performance Schema 中的一个表,用于记录用户定义的函数信息。以下是表中每一列的含义:
UDF_NAME: 用户定义函数名称,表示函数的名称,用于唯一标识一个用户定义函数。UDF_RETURN_TYPE: 返回类型,表示用户定义函数的返回数据类型。UDF_TYPE: 函数类型,表示用户定义函数的类型。UDF_LIBRARY: 用户定义函数库,表示用户定义函数所在的库。UDF_USAGE_COUNT: 使用次数,表示用户定义函数被调用的次数。
这个表通过记录用户定义函数的信息,帮助数据库管理员了解和监控数据库中用户定义函数的使用情况。例如,可以通过这个表查看每个用户定义函数的名称、返回类型、函数类型、所在库以及被调用的次数等信息。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。

user_variables_by_thread
这个表名为 user_variables_by_thread,是 MySQL Performance Schema 中的一个表,用于记录每个线程的用户变量信息。以下是表中每一列的含义:
THREAD_ID: 线程ID,表示线程的唯一标识符。VARIABLE_NAME: 变量名称,表示线程中用户定义的变量名称。VARIABLE_VALUE: 变量值,表示线程中用户定义变量的具体值。
这个表通过记录线程的用户变量信息,帮助数据库管理员了解和监控数据库中线程的运行时变量。例如,可以通过这个表查看每个线程的用户变量名称和值,这些信息对于调试和优化数据库性能以及确保数据一致性非常重要。

users
这个表名为 users,是 MySQL Performance Schema 中的一个表,用于记录数据库用户的连接和内存使用情况。以下是表中每一列的含义:
USER: 用户名,表示数据库用户的名称,用于唯一标识一个用户。CURRENT_CONNECTIONS: 当前连接数,表示当前用户活跃的连接数。TOTAL_CONNECTIONS: 总连接数,表示用户建立的总连接数。MAX_SESSION_CONTROLLED_MEMORY: 最大会话控制内存,表示用户会话可以控制的最大内存大小。MAX_SESSION_TOTAL_MEMORY: 最大会话总内存,表示用户会话可以使用的最大内存大小。
这个表通过记录用户的连接和内存使用情况,帮助数据库管理员了解和监控数据库用户的活动和性能。例如,可以通过这个表查看每个用户的当前连接数、总连接数、会话控制内存和会话总内存等信息。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。

variables_by_thread
这个表名为 variables_by_thread,是 MySQL Performance Schema 中的一个表,用于记录每个线程的用户变量信息。以下是表中每一列的含义:
THREAD_ID: 线程ID,表示线程的唯一标识符。VARIABLE_NAME: 变量名称,表示线程中用户定义的变量名称。VARIABLE_VALUE: 变量值,表示线程中用户定义变量的具体值。
这个表通过记录线程的用户变量信息,帮助数据库管理员了解和监控数据库中线程的运行时变量。例如,可以通过这个表查看每个线程的用户变量名称和值,这些信息对于调试和优化数据库性能以及确保数据一致性非常重要。

variables_info
这个表名为 variables_info,是 MySQL Performance Schema 中的一个表,用于记录数据库变量的信息。以下是表中每一列的含义:
VARIABLE_NAME: 变量名称,表示数据库变量的名称。VARIABLE_SOURCE: 变量来源,表示变量的来源,可以是 'COMPILED'(编译)、'GLOBAL'(全局)、'EXPLICIT'(显式)、'EXTRA'(额外)、'USER'(用户)、'LOGIN'(登录)、'COMMAND_LINE'(命令行命令行)、'PERSISTED'(持久化)或 'DYNAMIC'(动态)。VARIABLE_PATH: 变量路径,表示变量的路径。MIN_VALUE: 最小值,表示变量的最小值。MAX_VALUE: 最大值,表示变量的最大值。SET_TIME: 设置时间,表示变量设置的时间戳。SET_USER: 设置用户,表示设置变量的用户。SET_HOST: 设置主机,表示设置变量的主机名。
这个表通过记录数据库变量的信息,帮助数据库管理员了解和监控数据库变量的配置和使用情况。例如,可以通过这个表查看每个变量的名称、来源、路径、最小值范围、设置时间和用户等信息。这些信息对于监控和优化数据库性能以及确保数据一致性非常重要。

总结
MySQL Performance Schema 是 MySQL 的一个强大的工具,用于收集数据库服务器性能信息和运行时的统计数据。Performance Schema 中的表可以根据其功能和用途大致分为以下几类:
- 账户信息表(Account):
-
- 记录数据库账户相关的统计信息,例如
status_by_user、status_by_host和status_by_account。
- 记录数据库账户相关的统计信息,例如
- 索引和锁信息(Index and Lock):
-
- 记录索引使用情况和锁等待事件,例如
table_io_waits_summary_by_index_usage和table_lock_waits_summary_by_table。
- 记录索引使用情况和锁等待事件,例如
- 内存信息(Memory):
-
- 记录内存使用情况,例如
memory_summary_by_host_by_event_name和memory_summary_global_by_event_name。
- 记录内存使用情况,例如
- I/O 信息(I/O):
-
- 记录 I/O 操作的性能统计,例如
file_summary_by_event_name和file_summary_by_instance。
- 记录 I/O 操作的性能统计,例如
- 线程信息(Thread):
-
- 记录线程相关的统计信息,例如
threads和thread。
- 记录线程相关的统计信息,例如
- 语句和事务信息(Statement and Transaction):
-
- 记录 SQL 语句执行和事务的性能数据,例如
events_statements_by_event_name和transaction。
- 记录 SQL 语句执行和事务的性能数据,例如
- 阶段信息(Stage):
-
- 记录查询执行的阶段统计信息,例如
statement_analysis和statement。
- 记录查询执行的阶段统计信息,例如
- 等待事件(Wait):
-
- 记录等待事件的统计信息,例如
events_waits_by_thread_by_thread_by_event_name和events_waits_by_user_by_account_by_event_name。
- 记录等待事件的统计信息,例如
- 配置和设置(Setup):
-
- 记录配置和设置相关的统计信息,例如
setup_actors、setup_consumers和setup_instruments。
- 记录配置和设置相关的统计信息,例如
- 摘要信息(Summary):
-
- 提供各种摘要统计信息,例如
global_status和session_status。
- 提供各种摘要统计信息,例如
- 文件和文件 I/O(File and File I/O):
-
- 记录文件 I/O 操作的统计信息,例如
file_summary_by_event_name和file_summary_by_instance。
- 记录文件 I/O 操作的统计信息,例如
- 对象信息(Object):
-
- 记录对象(如表、触发器等)的性能统计,例如
object_summary_by_type和object_summary_by_name。
- 记录对象(如表、触发器等)的性能统计,例如
- 用户定义函数(User Defined Functions):
-
- 记录用户定义函数的信息,例如
user_defined_functions。
- 记录用户定义函数的信息,例如
- 用户变量(User Variables):
-
- 记录用户变量的信息,例如
user_variables_by_thread和user_variables_by_host。
- 记录用户变量的信息,例如
- 其他(Miscellaneous):
-
- 其他类型的统计信息,例如
performance_timers和hosts。
- 其他类型的统计信息,例如
这些表提供了丰富的性能数据,可以帮助数据库管理员监控和优化数据库服务器的性能。
更多推荐


所有评论(0)