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)
不允许对 setup_threads 表执行 TRUNCATE TABLE 操作。