MySQL 8.0 参考手册 / 第 27 章 MySQL 性能模式 /
25.2 性能模式构建配置
性能模式是强制性的,并且总是被编译进去。可以排除性能模式检测的某些部分。例如,要排除阶段和语句检测,请执行以下操作:
$> cmake . \
-DDISABLE_PSI_STAGE=1 \
-DDISABLE_PSI_STATEMENT=1
有关详细信息,请参阅
第 2.9.7 节“MySQL 源配置选项”中CMake选项
的说明。
DISABLE_PSI_
XXX
如果您在以前的安装上安装 MySQL,该安装是在没有性能模式的情况下配置的(或者使用具有丢失或过时表的旧版本的性能模式)。此问题的一个迹象是错误日志中存在如下消息:
[ERROR] Native table 'performance_schema'.'events_waits_history'
has the wrong structure
[ERROR] Native table 'performance_schema'.'events_waits_history_long'
has the wrong structure
...
要纠正该问题,请执行 MySQL 升级过程。请参阅 第 2.11 节,“升级 MySQL”。
要验证服务器是否使用性能模式支持构建,请检查其帮助输出。如果 Performance Schema 可用,输出会提到几个名称以 开头的变量performance_schema
:
$> mysqld --verbose --help
...
--performance_schema
Enable the performance schema.
--performance_schema_events_waits_history_long_size=#
Number of rows in events_waits_history_long.
...
您还可以连接到服务器并在以下位置的输出中查找命名PERFORMANCE_SCHEMA
存储引擎的行SHOW ENGINES
:
mysql> SHOW ENGINES\G
...
Engine: PERFORMANCE_SCHEMA
Support: YES
Comment: Performance Schema
Transactions: NO
XA: NO
Savepoints: NO
...
如果在构建时未将性能模式配置到服务器中
PERFORMANCE_SCHEMA
,则输出中不会出现任何行SHOW ENGINES
。您可能会performance_schema
在 的输出中看到 listed SHOW DATABASES
,但它没有表格且无法使用。
PERFORMANCE_SCHEMA
输出中
的一行SHOW ENGINES
表示性能模式可用,而不是已启用。要启用它,您必须在服务器启动时这样做,如下一节所述。