服务器磁盘爆满?别慌,教你轻松清理!
https://i-blog.csdnimg.cn/direct/9827ae35062c42fa90a45441223a5045.jpeg服务器磁盘爆满?别慌,教你轻松清理!
简介
https://img-blog.csdnimg.cn/img_convert/828c4d4df1fc012dd3ed3fabda7b075c.jpeg
服务器磁盘空间告急,网站访问缓慢,甚至无法正常运行?别担心,这篇文章将为你提供一份详细的清理指南,帮助你快速释放服务器磁盘空间,恢复体系正常运行。
我们将从以下几个方面展开讨论:
[*]识别磁盘空间占用大户: 使用哪些工具可以快速定位占用大量磁盘空间的文件和目次?
[*]清理无用文件: 哪些范例的文件可以安全删除?如何克制误删重要数据?
[*]优化日记文件: 如何设置日记文件的保留策略,克制日记文件占用过多空间?
无论你是服务器管理员还是网站运营者,这篇文章都将为你提供实用的解决方案,帮助你轻松应对服务器磁盘爆满标题。
摘要 :
服务器磁盘空间告急?别慌!本文将教你如何快速识别并清理占用大量磁盘空间的文件和目次,优化日记文件,释放磁盘空间,恢复体系正常运行。适合服务器管理员和网站运营者。
正文
1 排查方式
1.1 显示磁盘空间使用环境
df -h
https://img-blog.csdnimg.cn/img_convert/0e713989e603f3cd08548afb6c365619.png
文件体系中的挂载点/dev/vdal的59G磁盘空间已经用完,我们需要对一些没用的大文件举行清理删除。
1.2 显示当前目次所占空间环境
回到根目次,查看当前的目次下谁人文件占用最大
cd /
du -h --max-depth=1
https://img-blog.csdnimg.cn/img_convert/97940251175526c24c9a9b8c2aebcd4d.png
进入大的文件目次,重复查看当前目次所占空间环境,我发现MySQL的binlog占用了比较大的磁盘空间。
https://img-blog.csdnimg.cn/img_convert/74e83a916d7c42c6331290d450095442.png
2 解决方案
2.1 关于MySQL中的binlog占用磁盘空间
列出当前 MySQL 服务器上全部的二进制日记文件的名称和大小
SHOW BINARY LOGS;
https://img-blog.csdnimg.cn/img_convert/9ee99b616ffc04d834b5201377cd0ab6.png
查询并显示 expire_logs_days 体系变量的当前值,这个变量作用于binlog逾期时间。
[*]expire_logs_days 的默认值通常是 0,表示二进制日记文件不会主动删除。
[*]expire_logs_days 的值大于 0,MySQL 会在天天的日记轮转时查抄并删除凌驾指定天数的二进制日记文件。
show variables like 'expire_logs_days';
https://img-blog.csdnimg.cn/img_convert/37b91470ca3437e7bd3f5240cdf9486a.png
动态修改 expire_logs_days 的值,设置binlog逾期时间为30天。
作者提示:【这个谨慎设置,请勿用于生产环境,binlog文件作用于数据恢复、主从复制等重要功能】
set global expire_logs_days = 30;
演示的是MySQL 8,大概碰到的错误
3683 - The option expire_logs_days and binlog_expire_logs_seconds cannot be used together. Please use binlog_expire_logs_seconds to set the expire time (expire_logs_days is deprecated)
- 选项expire_logs_days 和binlog_expire_logs_seconds 不能一起使用。请使用 binlog_expire_logs_seconds 设置过期时间(expire_logs_days 已弃用)
可以使用下面的命令举行更换,下面命令选一条即可。
SET GLOBAL binlog_expire_logs_seconds = 604800;-- 7天(7 * 24 * 60 * 60)
SET GLOBAL binlog_expire_logs_seconds = 2592000;-- 30天(30 * 24 * 60 * 60)
设置好我们在查看一下binlog逾期时间,由于expire_logs_days变量已经弃用,我们设置了binlog_expire_logs_seconds所以这里查询的命令也需要改下变量名称。
show variables like 'binlog_expire_logs_seconds';
【扩展】列出 mysql-binlog.000067 文件中的全部事故。
show binlog events in 'mysql-binlog.000067'
https://img-blog.csdnimg.cn/img_convert/ecb17aaade5e9d2190dc705212f13707.png
2.2 Docker占用磁盘空间
[*]docker system prune : 清理未使用的 Docker 资源,包罗未使用的镜像、容器、卷和构建缓存。
[*]docker image prune : 清理未使用的镜像。
[*]docker container prune : 清理停止的容器。
[*]docker volume prune : 清理未使用的卷。
[*]docker builder prune : 清理构建缓存。
显示 Docker 体系中各种资源的占用环境。
docker system df
https://img-blog.csdnimg.cn/img_convert/51feda3f0af39f9087768112b9fbb272.png
[*]TYPE : 资源的范例,包罗 Images(镜像)、Containers(容器)、Local Volumes(本地卷)和 Build Cache(构建缓存)。
[*]TOTAL : 该范例资源的总数。
[*]ACTIVE : 该范例资源中处于活动状态的数量。
[*]SIZE : 该范例资源占用的总空间大小。
[*]RECLAIMABLE : 可以回收的空间大小,以及回收的比例。
删除全部无用的volume(本地数据卷)
docker volume rm $(docker volume ls -qf dangling=true)
清理之后
https://img-blog.csdnimg.cn/img_convert/c0001ada3f5a0db37e2cf7e9ec21ee49.png
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]