最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
如何利用MySQL 8.0的Persist功能实现在线修改参数永久生效?
时间:2026-09-03 19:40:49 编辑:袖梨 来源:一聚教程网
只有同时满足IS_DYNAMIC='YES'且VARIABLE_SCOPE='GLOBAL'的全局变量(如max_connections、wait_timeout、innodb_buffer_pool_size等)才支持SET PERSIST;datadir、port等只读变量不支持,须改my.cnf后重启。
哪些变量能用 SET PERSIST 修改?先查再试
不是所有全局变量都支持持久化。硬写会直接报错:ERROR 1238 (HY000): Variable 'xxx' is a read only variable。必须确认变量同时满足两个条件:动态可改(IS_DYNAMIC = 'YES')且作用域为全局(VARIABLE_SCOPE = 'GLOBAL')。
查法很简单:
SELECT VARIABLE_NAME, VARIABLE_SCOPE, IS_DYNAMIC FROM performance_schema.variables_info WHERE VARIABLE_NAME = 'max_connections';
- 常见支持的:
max_connections、wait_timeout、innodb_buffer_pool_size(MySQL 8.0.22+)、log_bin(需配合SET PERSIST_ONLY) - 典型不支持的:
datadir、port、socket、server_id——这些仍得改my.cnf+ 重启
SET PERSIST 和 SET PERSIST_ONLY 的区别在哪?
核心就一条:是否立刻改内存值。
-
SET PERSIST max_connections = 500;→ 内存立即变成 500,同时写入mysqld-auto.cnf,重启后仍是 500 -
SET PERSIST_ONLY log_bin = OFF;→ 内存值不变(比如当前 binlog 还开着),只写进mysqld-auto.cnf,下次重启才关闭 binlog
两者都写同一个文件:mysqld-auto.cnf(位于 SELECT @@datadir; 返回的路径下),JSON 格式,由 MySQL 自动管理。千万别手动编辑它——一个逗号错,MySQL 启动就失败。
执行前必须检查的三件事
报错基本不是语法问题,而是环境卡住了:
- 权限不足 → 报错
ERROR 1227 (42000): Access denied; you need SYSTEM_VARIABLES_ADMIN privilege。普通 root 默认没有这个权限,要显式授权:GRANT SYSTEM_VARIABLES_ADMIN ON *.* TO 'admin'@'%'; - 目录不可写 → 报错
ERROR 3615 (HY000): Cannot write to mysqld-auto.cnf。常见于容器挂载为只读、SELinux 启用、或数据目录属主不对 - 配置被覆盖 → 改完没生效?检查是否被
my.cnf里同名参数干扰。注意:mysqld-auto.cnf加载优先级最高,但前提是它被成功加载;可用SHOW VARIABLES LIKE 'persisted_globals_load';确认该开关是否为ON
验证是否真的落盘了?别只信 “Query OK”
命令返回成功不代表已持久化。得查两处:
- 查表:
SELECT * FROM performance_schema.persisted_variables WHERE VARIABLE_NAME = 'max_connections';—— 有记录说明已落盘 - 查文件:进数据目录(
SELECT @@datadir;确认路径),看是否存在mysqld-auto.cnf,内容应为合法 JSON(不要打开编辑) - 顺手清空某项?用
RESET PERSIST max_connections;;全清?用RESET PERSIST;
最易忽略的是:即使设成和当前值一样的数,SET PERSIST 也会写入文件;但设为 DEFAULT(如 SET PERSIST max_connections = DEFAULT;)可清除该变量的持久化条目。
相关文章
- 宜人优选指纹停用指南 09-03
- TPLink TLWDR8620 52 无线路由器无线设备接入控制设置 09-03
- 宜人优选关闭指纹做法 09-03
- 我的勇者技能书如何获得 怎么升级最划算 09-03
- 我的勇者如何获得神器 神器三选一选谁 09-03
- 免费又好用的写作软件APP推荐:高效创作必备工具 09-03