登录
首页 >  文章 >  php教程

XAMPPMySQL缓存优化技巧分享

时间:2026-04-25 15:58:57 292浏览 收藏

XAMPP 7.4+ 自带的 MySQL 5.7.33 及以上版本已彻底移除查询缓存功能,任何对 query_cache_size 的配置不仅无效,还会触发弃用警告,误导调优方向;真正影响性能的关键在于合理设置 innodb_buffer_pool_size(低配机建议 16–32M)、tmp_table_size 与 max_heap_table_size(需设为相同值,如 16M)等核心内存参数,同时务必确认修改的是 my.ini 中正确且未被注释的 [mysqld] 段,并以管理员权限重启服务——避开过时配置陷阱,才能让低配环境下的 MySQL 稳定高效运行。

XAMPP修改MySQL查询缓冲区 XAMPP query_cache_size调优

别调 query_cache_size —— 它在 XAMPP 自带的 MySQL 5.7.33+ 和 MariaDB 10.4+ 中已彻底移除,配置项残留只会干扰判断。

为什么改 query_cache_size 没用还可能报 warning

XAMPP 7.4+ 默认捆绑 MySQL 5.7.33 或更高版本,官方已在该版本中完全删除查询缓存模块。即使你在 my.ini 里写上:

query_cache_type = 1
query_cache_size = 16M

MySQL 启动时会直接忽略这两行,并在错误日志里记一条 warning,比如:

[Warning] 'query_cache_size' is deprecated and will be removed in a future release.

这不是“没生效”,而是压根不认——连加载都不加载。

常见误操作包括:复制老教程配置、用 MySQL 5.6 的调优文档套用到新版 XAMPP、或看到 SHOW VARIABLES LIKE 'query%' 返回空结果后反复重试修改。

怎么确认你的 XAMPP 已禁用查询缓存

连进 MySQL 执行:

SHOW VARIABLES LIKE 'have_query_cache';

返回值一定是:

have_query_cache | NO

再执行:

SHOW VARIABLES LIKE 'query%';

结果为空集,或只返回 query_cache_wlock_invalidate 这类废弃变量(值为 OFF)。

如果看到 query_cache_size 显示非零值,说明你连的是旧版 MySQL(比如手动装了 5.6),不是 XAMPP 自带的默认实例。

真正该调的缓冲区:innodb_buffer_pool_size 和临时表参数

低配电脑(2GB 内存)下,query_cache_size 不但无效,还会让人误以为“还有缓存可挖”,反而忽略真正吃内存的大头:

  • innodb_buffer_pool_size:XAMPP 默认设为 128M,但低配机应压到 32M16M;低于 12M 可能启动失败
  • tmp_table_sizemax_heap_table_size:必须设为相同值(如 16M),否则 MySQL 按较小值生效
  • sort_buffer_sizeread_buffer_size:每连接独占,设成 64K 足够,设高了反而加速 OOM

这些参数都在 XAMPP\mysql\bin\my.ini[mysqld] 段落下修改,改完必须用管理员身份重启 MySQL 服务(XAMPP 控制面板点 “Stop” 再 “Start”,或命令行 net stop mysql && net start mysql)。

最容易被忽略的一点:XAMPP 的 my.ini 里常混着多段重复配置(比如两个 [mysqld]),改错位置会导致参数完全不生效;务必确认你编辑的是最下方那个、且未被注释掉的 [mysqld] 块。

本篇关于《XAMPPMySQL缓存优化技巧分享》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于文章的相关知识,请关注golang学习网公众号!

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