setup_threads 表列出检测到的线程类。它公开线程类名称和属性
mysql> SELECT * FROM performance_schema.setup_threads\G
*************************** 1. row ***************************
NAME: thread/performance_schema/setup
ENABLED: YES
HISTORY: YES
PROPERTIES: singleton
VOLATILITY: 0
DOCUMENTATION: NULL
...
*************************** 4. row ***************************
NAME: thread/sql/main
ENABLED: YES
HISTORY: YES
PROPERTIES: singleton
VOLATILITY: 0
DOCUMENTATION: NULL
*************************** 5. row ***************************
NAME: thread/sql/one_connection
ENABLED: YES
HISTORY: YES
PROPERTIES: user
VOLATILITY: 0
DOCUMENTATION: NULL
...
*************************** 10. row ***************************
NAME: thread/sql/event_scheduler
ENABLED: YES
HISTORY: YES
PROPERTIES: singleton
VOLATILITY: 0
DOCUMENTATION: NULLsetup_threads 表具有以下列
NAME仪器名称。线程仪器以
thread开头(例如,thread/sql/parser_service或thread/performance_schema/setup)。ENABLED仪器是否启用。值为
YES或NO。可以修改此列,尽管设置ENABLED对已经运行的线程没有影响。对于后台线程,设置
ENABLED值控制是否将INSTRUMENTED设置为YES或NO,用于随后为该仪器创建的线程,并在threads表中列出。对于前台线程,此列无效;setup_actors表优先。HISTORY是否记录仪器的历史事件。值为
YES或NO。可以修改此列,尽管设置HISTORY对已经运行的线程没有影响。对于后台线程,设置
HISTORY值控制是否将HISTORY设置为YES或NO,用于随后为该仪器创建的线程,并在threads表中列出。对于前台线程,此列无效;setup_actors表优先。PROPERTIES仪器属性。此列使用
SET数据类型,因此每个仪器可以设置以下列表中的多个标志singleton: 仪器只有一个实例。例如,thread/sql/main仪器只有一个线程。user: 仪器与用户工作负载(与系统工作负载相对)直接相关。例如,执行用户会话的线程(如thread/sql/one_connection)具有user属性,以将它们与系统线程区分开来。
VOLATILITY仪器波动性。此列与
setup_instruments表中的含义相同。见 第 29.12.2.3 节,“setup_instruments 表”。DOCUMENTATION描述仪器目的的字符串。如果不可用,该值为
NULL。
setup_threads 表具有以下索引
主键在 (
NAME) 上
TRUNCATE TABLE 不允许用于 setup_threads 表。