为什么 MySQLTuner 显示 query_cache_size (=0)?

Blu*_*nch 4 mysql my.cnf

为什么 MySQLTuner 显示query_cache_size (=0)

在 my.cnf 中,我有

查询缓存类型 = 1

query_cache_size = 16M

query_cache_limit = 2M

MySQLTuner 的报告显示了这一点

[!!] 由于互斥量争用,查询缓存可能默认被禁用。

[OK] 查询缓存效率:48.5%(2M cached / 5M selects)

[!!] 每天查询缓存修剪:28824

[OK] 需要临时表的排序:0%(23 次临时排序 / 9K 排序)

[OK] 没有索引没有连接

[!!] 在磁盘上创建的临时表:69%(磁盘上 10K/总共 15K)

虽然 MySQLTuner 的建议显示

query_cache_size (=0)

query_cache_type (=0)

query_cache_size (> 16M)

由于显示“(=0)”的建议和显示每天高查询缓存修剪的报告,我的 query_cache_size 是否不起作用?

这是因为“由于互斥体争用,查询缓存可能在默认情况下被禁用”。?

MySQL 已经运行了 48 小时。

Wil*_*uck 8

版本 8 将没有可用的查询缓存,他们建议避免使用这种方法来处理性能不佳或成本高昂的查询。

对 my.cnf-ini [mysqld] 部分的建议

query_cache_type=0  # for OFF
query_cache_size=0  # to ensure QC is NOT USED
Run Code Online (Sandbox Code Playgroud)

不使用 QC 会降低一定数量的 CPU 使用率。