tp_thread_group_stats 表报告每个线程组的统计信息。每个组有一行。
tp_thread_group_stats 表包含以下列
TP_GROUP_ID线程组 ID。这是表中的唯一键。
CONNECTIONS_STARTED已启动的连接数。
CONNECTIONS_CLOSED已关闭的连接数。
QUERIES_EXECUTED已执行的语句数。当语句开始执行时,此数字会递增,而不是当语句完成时递增。
QUERIES_QUEUED已接收但排队等待执行的语句数。这并不包括线程组能够立即开始执行而无需排队的语句,这种情况可能发生在 第 7.6.3.3 节,“线程池操作” 中描述的条件下。
THREADS_STARTED已启动的线程数。
PRIO_KICKUPS根据
thread_pool_prio_kickup_timer系统变量的值,从低优先级队列移动到高优先级队列的语句数。如果此数字快速增加,请考虑增加该变量的值。快速增加的计数器意味着优先级系统没有阻止事务过早开始。对于InnoDB,这很可能意味着由于并发事务过多而导致性能下降。STALLED_QUERIES_EXECUTED由于执行时间超过
thread_pool_stall_limit系统变量的值而被定义为已停滞的语句数。BECOME_CONSUMER_THREAD线程被分配为消费者线程角色的次数。
BECOME_RESERVE_THREAD线程被分配为预留线程角色的次数。
BECOME_WAITING_THREAD线程被分配为等待线程角色的次数。当语句排队时,即使在正常操作中,这种情况也会经常发生,因此在高度负载的系统中,如果语句排队,该值的快速增加是正常的。
WAKE_THREAD_STALL_CHECKER停滞检查线程决定唤醒或创建线程以可能处理某些语句或处理等待线程角色的次数。
SLEEP_WAITSTHD_WAIT_SLEEP等待次数。这些等待发生在线程进入休眠状态时(例如,通过调用SLEEP()函数)。DISK_IO_WAITSTHD_WAIT_DISKIO等待次数。这些等待发生在线程执行可能不会命中文件系统缓存的磁盘 I/O 时。这些等待发生在缓冲池将数据读写到磁盘时,而不是针对对文件的正常读写。ROW_LOCK_WAITSTHD_WAIT_ROW_LOCK等待次数,等待另一个事务释放行锁。GLOBAL_LOCK_WAITSTHD_WAIT_GLOBAL_LOCK等待次数,等待释放全局锁。META_DATA_LOCK_WAITSTHD_WAIT_META_DATA_LOCK等待次数,等待释放元数据锁。TABLE_LOCK_WAITSTHD_WAIT_TABLE_LOCK等待次数,等待解锁语句需要访问的表。USER_LOCK_WAITSTHD_WAIT_USER_LOCK等待次数,等待释放用户线程构建的特殊锁。BINLOG_WAITSTHD_WAIT_BINLOG_WAITS等待次数,等待二进制日志变为可用。GROUP_COMMIT_WAITSTHD_WAIT_GROUP_COMMIT等待的数量。 这些等待发生在组提交必须等待其他方完成其事务的一部分时。FSYNC_WAITS文件同步操作的
THD_WAIT_SYNC等待次数。
tp_thread_group_stats 表具有以下索引
在 (
TP_GROUP_ID) 上的唯一索引
对于 tp_thread_group_stats 表,不允许使用 TRUNCATE TABLE。