MySQL 5.6版本内存占用过高的解决办法
最近在阿里云购买了一台云服务器,因为是自己测试玩的,所以配置按最低的来了,1G内存,然后啪啪啪(指键盘声音)的安装了JDK,Tomcat,MySQL(5.6)等一系列环境,开始很爽,然后噩梦开始了:
MySQL会经常停止运行,而且启动都起不起来,要reboot才行,常看MySQL保存日志,发现是内存不够,看了一下,环境全部开启以后,内存占用基本都在90%以上,通过htop仔细查看内存占用,MySQL要占用460M左右…
后来查阅相关资料,MySQL 5.6的默认缓存设置对于低内存的环境并不合理,如果使用默认的配置,至少要占用400M以上。可以修改my.cnf中的默认配置,降低内存占用。
我的系统是centos,my.cnf位于/etc目录下,先关闭MySQL服务然后编辑配置文件:
1 2 | service mysql stop sudo vi / etc / my.cnf |
默认的配置是:
1 2 3 | performance_schema_max_table_instances 12500 table_definition_cache 1400 table_open_cache 2000 |
修改为:
1 2 3 | performance_schema_max_table_instances = 600 table_definition_cache = 400 table_open_cache = 256 |
即可,如果没有找到这三个配置,可以直接在文件尾添加,然后启动MySQL服务即可,我这边修改后后MySQL的内存占用大概在70M多。
分类:
mysql相关
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端