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服务然后编辑配置文件:

service mysql stop
sudo vi /etc/my.cnf

 默认的配置是:

performance_schema_max_table_instances 12500
table_definition_cache 1400
table_open_cache 2000

修改为:

performance_schema_max_table_instances=600
table_definition_cache=400
table_open_cache=256

 即可,如果没有找到这三个配置,可以直接在文件尾添加,然后启动MySQL服务即可,我这边修改后后MySQL的内存占用大概在70M多。

猜你喜欢

转载自www.cnblogs.com/xzlive/p/9547808.html