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

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

为什么 MySQLTuner 显示query_cache_size (=0)

在 my.cnf 中,我有

query_cache_type = 1

查询缓存大小 = 16M

查询缓存限制 = 2M

MySQLTuner 的报告显示了这一点

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

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

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

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

[OK] 没有索引就没有连接

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

虽然 MySQLTuner 的建议显示

查询缓存大小 (=0)

查询缓存类型 (=0)

查询缓存大小 (> 16M)

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

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

MySQL 已运行 48 小时。

答案1

版本 8 将不提供查询缓存,他们建议避免使用这种性能不佳或成本昂贵的查询。

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

query_cache_type=0  # for OFF
query_cache_size=0  # to ensure QC is NOT USED

不使用 QC 会降低一定程度的 CPU 利用率。

相关内容