mysql修改wait_timeout无效问题及解决
作者:碧落&凡尘
MySQL修改wait_timeout无效?原来是我没加global!本文详细解析了wait_timeout的正确修改方法,并强调了查看该变量时也需加global的关键步骤,帮助读者避免常见错误
mysql修改wait_timeout无效
今晚本来要搭建一个mysql服务测试那个mysql has gone away问题的, 结果设置wait_timeout死活不生效, 找来找去, 结果发现最大的问题在于global variables的问题。
先说最重要的, 查看这个变量的方法:
show global variables like '%timeout';
或者
show global variables like 'wait_timeout';
一定要加global, 切记要加global, 不然查询出来的只是一般变量, 那个值是不会随着修改global变量而改变的。
然后说说修改wait_timeout的方法:
1. 编辑 MySQL 配置文件
MySQL 的配置文件可能名为 my.cnf 或 my.ini,取决于操作系统。
这个文件通常位于以下路径:
- 在 Unix/Linux 系统中:/etc/mysql/my.cnf 或 /etc/my.cnf
- 在 Windows 系统中:C:\ProgramData\MySQL\MySQL Server X.X\my.ini (X.X 是 MySQL 的版本号)
使用文本编辑器打开配置文件,找到 [mysqld] 部分,然后添加或修改 wait_timeout 参数:
ini [mysqld] wait_timeout = 3600 # 设置为1小时(3600秒)
2. 临时修改
在mysql shell中执行如下命令:
set global wait_timeout = 3600
之后再查询global变量就可以发现修改成功了
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
