512m内存服务器mysql优化

由于之前购买的阿里云服务器1核2GB,续费的话降低了配置改成了一核512m,然后网站就崩溃打不开了,那就把网站放几天假再看。

查看docker mysql没有启动成功,好家伙。。我啥都没动,然后就开始排查原因

查看系统日志/var/log/kern.log  或者dmesg |grep mysql

白俊遥博客

白俊遥博客

发现mysql一直导致oom,被无限杀,此时我的服务器后台完全卡的动不了

1、于是先给服务器配置了swap分区:参考资料 https://wiki.archlinux.org/title/Swap

白俊遥博客

白俊遥博客

顺带清理缓存

echo 1 > /proc/sys/vm/drop_caches  <---清理pagecache,对应/proc/meminfo里面的cached
echo 2 > /proc/sys/vm/drop_caches  <---清理释放dentries和inodes
echo 3 > /proc/sys/vm/drop_caches  <---清理所有的缓存

2、docker清理缓存

把docker-compose所有的服务停了

常见docker清理方法

docker system df 类似于Linux上的df命令,用于查看Docker的磁盘使用情况:


docker system prune 可以用于清理磁盘,删除关闭的容器、无用的数据卷和网络,以及dangling镜像(即无tag的镜像)。


docker system prune -a 清理得更加彻底,可以将没有容器使用Docker镜像都删掉。注意,这两个命令会把你暂时关闭的容器,以及暂时没有用到的Docker镜像都删掉了…所以使用之前一定要想清楚.。我没用过,因为会清理 没有开启的 Docker


df -h 查看磁盘使用情况

docker system df 磁盘使用情况

docker container prune # 删除所有退出状态的容器

docker volume prune # 删除未被使用的数据卷

docker image prune # 删除 dangling 或所有未被使用的镜像

docker volume rm $(docker volume ls -qf dangling=true)

删除所有dangling数据卷(即无用的Volume)

du -hs /var/lib/docker/ 查看docker镜像存放目录空间大小


3、mysql配置文件优化

白俊遥博客

然后docker-compose启动服务,全部服务启动成功

docker stats各项指标也是正常的,大功告成,可以睡觉了~

参考链接:https://github.com/docker-library/mysql/issues/3

                 https://www.jb51.net/article/234761.htm

                 http://www.tocker.ca/2013/09/10/improving-mysqls-default-configuration.html

                 https://www.jb51.net/article/234761.htm

打赏,支持一下

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

Powered by WEIXIA.XIN,学的不仅是技术,更是梦想!!!

Davidvivi博客
请先登录后发表评论
  • 最新评论
  • 总共 0条评论