自己用的阿里云的服务器,一直内存很高,本来就2g的内存,可用内存才1.7g,SpringBoot服务配置的参数是最大内存521m,通过top -c查看发现是mysql占用内存过高,经过一番优化,内存从1.4g占用稳稳的落在了1g,我的系统顿时流畅了很多。
我的服务器除了nginx和python等通过包启动的服务外,还安装了一堆docker容器服务:
虽然安装的东西很多,但是系统运行的很流畅。
就是在参数配置文件中my.cnf添加如下参数:
[mysqld]
performance_schema_max_table_instances=400
table_definition_cache=400
table_open_cache=256
performance_schema = off
其中的原理就是缓存的设置参数尽量的合理,一次性查询的table量设置等,看网上的其他网友说的只设置一个参数:
performance_schema = off
也可以解决问题,达到优化的目的。 这个我就不测试了,感兴趣的可以进行下测试的,我的目的是优化我的mysql占用服务器内存,已经达到。
因为我的mysql是通过docker进行部署的,所以没办法直接进行vim进行修改。
docker exec -it mysql bash
如果你的mysql容器不支持vim,进行以下操作命令安装:
apt-get update
apt-get install vim
docker cp 容器id:/绝对路径/my.cnf ./
防止以为创建一个文件夹进行拷贝到back文件夹以防参数配置错误导致不能启动
docker cp /绝对路径/my.cnf 容器id:/绝对路径/my.cnf
free -h
上面的步骤就完成了mysql的优化过程,内存顿时被释放了大概400m,太完美了,对于个人服务器内存本来就不够用的我来说,真的是非常的不错。如果你也在头疼mysql内存占用过大,赶紧优化吧。加我的公众号:Java时间屋 跟我进行更多的交流。
页面更新:2024-05-29
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号