登录
首页 >  文章 >  php教程

XAMPP如何修改MySQL的查询缓存

时间:2026-05-24 16:00:32 368浏览 收藏

小伙伴们对文章编程感兴趣吗?是否正在学习相关知识点?如果是,那么本文《XAMPP如何修改MySQL的查询缓存》,就很适合你,本篇文章讲解的知识点主要包括。在之后的文章中也会多多分享相关知识点,希望对大家的知识积累有所帮助!

XAMPP 自带的 MySQL 5.7.33+ 或 MariaDB 10.4+ 已彻底移除查询缓存,querycache* 配置无效;应删除相关配置,重点调优 innodb_buffer_pool_size、max_connections 等实际生效参数。

XAMPP如何修改MySQL的查询缓存

别改了——XAMPP 自带的 MySQL 5.7.33+ 或 MariaDB 10.4+ 已彻底移除查询缓存,配置项只是残留垃圾。

my.ini 里还有没有 query_cache_type

打开 XAMPP\mysql\bin\my.ini(不是 my.cnf),在 [mysqld] 段落里搜 query_cache。如果看到类似:

query_cache_type = 1
query_cache_size = 16M

这些行已经无效。MySQL 启动时会忽略它们,并在错误日志里写一句 warning,但不会报错,容易让人误以为“还在生效”。

  • MySQL 5.7 是最后一个支持查询缓存的大版本,但 XAMPP 7.4+ 默认捆绑的 MySQL 5.7.33 起已默认关闭且不加载模块
  • MariaDB 10.4+ 和所有 MySQL 8.0+ 版本直接删掉了相关代码,SHOW VARIABLES LIKE 'query_cache%' 会返回空结果
  • 如果你用的是较老 XAMPP(如 7.2.x),才可能真有作用;但低配机上它反而拖慢性能

运行 SHOW VARIABLES LIKE 'query_cache%' 看是否真存在

连进 MySQL 执行这句:

mysql> SHOW VARIABLES LIKE 'query_cache%';

如果返回空集,说明查询缓存根本没编译进去,改配置毫无意义。

  • 返回结果含 query_cache_type 且值为 OFF0,也等于没开——不是“被你关了”,而是启动时就跳过了
  • 哪怕你手动 SET GLOBAL,也会提示 Unknown system variable 或直接静默失败
  • 别信网上教程里“调大 query_cache_size 能提速”的说法,那是针对 2015 年前的老环境

真正该调的内存参数是 innodb_buffer_pool_size

用户想“优化缓存”,实际卡顿根源几乎全是 innodb_buffer_pool_size 设得太高。XAMPP 默认设成 128M,2GB 内存机器一开 MySQL 就占 500MB+。

  • 打开 my.ini,在 [mysqld] 下加或改这一行:innodb_buffer_pool_size = 32M
  • 如果只用 MyISAM 表(比如老 WordPress),可压到 16M;低于 12M 可能启动失败
  • 改完必须用管理员身份重启 MySQL 服务,否则配置不加载
  • innodb_buffer_pool_size 是实打实常驻内存的,且 MySQL 不会主动释放——这才是你看到“启动就吃光内存”的元凶

真正影响性能的是缓冲池和连接内存,不是那个早就下线的查询缓存。删掉所有 query_cache_* 配置,专注调 innodb_buffer_pool_sizemax_connections 和禁用冗余引擎,才对低配机有效。

今天带大家了解了的相关知识,希望对你有所帮助;关于文章的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>