服务器磁盘爆满?别慌,教你轻松清理!

发布时间:2025-02-01 03:52

家居清洁神器,让你轻松打理家务 #生活乐趣# #生活分享# #家居生活方式# #日常家居好物推荐#

2024-10-24 339 发布于广东

版权

举报

版权声明:

本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《 阿里云开发者社区用户服务协议》和 《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写 侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

简介: 服务器磁盘空间告急?别慌!本文将教你如何快速识别并清理占用大量磁盘空间的文件和目录,优化日志文件,释放磁盘空间,恢复系统正常运行。适合服务器管理员和网站运营者。

服务器磁盘爆满?别慌,教你轻松清理!

简介

服务器磁盘空间告急,网站访问缓慢,甚至无法正常运行?别担心,这篇文章将为你提供一份详细的清理指南,帮助你快速释放服务器磁盘空间,恢复系统正常运行。

我们将从以下几个方面展开讨论:

识别磁盘空间占用大户: 使用哪些工具可以快速定位占用大量磁盘空间的文件和目录? 清理无用文件: 哪些类型的文件可以安全删除?如何避免误删重要数据? 优化日志文件: 如何设置日志文件的保留策略,避免日志文件占用过多空间?

无论你是服务器管理员还是网站运营者,这篇文章都将为你提供实用的解决方案,帮助你轻松应对服务器磁盘爆满问题。

摘要
服务器磁盘空间告急?别慌!本文将教你如何快速识别并清理占用大量磁盘空间的文件和目录,优化日志文件,释放磁盘空间,恢复系统正常运行。适合服务器管理员和网站运营者。

正文

1 排查方式

1.1 显示磁盘空间使用情况

df -h

image-20230703141858681

文件系统中的挂载点/dev/vdal的59G磁盘空间已经用完,我们需要对一些没用的大文件进行清理删除。

1.2 显示当前目录所占空间情况

回到根目录,查看当前的目录下那个文件占用最大

cd / du -h --max-depth=1

image-20241024104454904

进入大的文件目录,重复查看当前目录所占空间情况,我发现MySQL的binlog占用了比较大的磁盘空间。

image-20241024105233906

2 解决方案

2.1 关于MySQL中的binlog占用磁盘空间

列出当前 MySQL 服务器上所有的二进制日志文件的名称和大小

SHOW BINARY LOGS;

image-20241024105902744

查询并显示 expire_logs_days 系统变量的当前值,这个变量作用于binlog过期时间。

expire_logs_days 的默认值通常是 0,表示二进制日志文件不会自动删除。 expire_logs_days 的值大于 0,MySQL 会在每天的日志轮转时检查并删除超过指定天数的二进制日志文件。

show variables like 'expire_logs_days';

image-20241024110128891

动态修改 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) [3683] - 选项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'

image-20241024110844222

2.2 Docker占用磁盘空间 docker system prune : 清理未使用的 Docker 资源,包括未使用的镜像、容器、卷和构建缓存。 docker image prune : 清理未使用的镜像。 docker container prune : 清理停止的容器。 docker volume prune : 清理未使用的卷。 docker builder prune : 清理构建缓存。

显示 Docker 系统中各种资源的占用情况。

docker system df

image-20230703142312772

TYPE : 资源的类型,包括 Images(镜像)、Containers(容器)、Local Volumes(本地卷)和 Build Cache(构建缓存)。 TOTAL : 该类型资源的总数。 ACTIVE : 该类型资源中处于活动状态的数量。 SIZE : 该类型资源占用的总空间大小。 RECLAIMABLE : 可以回收的空间大小,以及回收的比例。

删除所有无用的volume(本地数据卷)

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

清理之后

image-20230703143623853

相关实践学习

如何快速连接云数据库RDS MySQL

本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。

全面了解阿里云能为你做什么

阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs

网址:服务器磁盘爆满?别慌,教你轻松清理! https://www.yuejiaxmz.com/news/view/749886

相关内容

C盘爆满?教你轻松清理无故产生的大量临时文件!
TreeSize:免费的磁盘清理与管理神器,解决C盘爆满的燃眉之急
C盘爆满不用愁,这两款神器帮你轻松搞定!
CentOS 7轻松应对:盘点5款清理磁盘空间的实用软件
唇膏化了怎么办?别慌!教你轻松修复妙招
电脑卡顿,C盘爆满怎么办?超实用的清理C盘方式来啦!让你释放双手
联想服务618火爆进行中!深度清洁保养等众多服务优品,轻松扫除你的夏日用机忧愁!
电脑d盘满了怎么清理 电脑d盘满了如何清理磁盘
windirstat磁盘管理工具,清理磁盘神器(附网盘链接)
Apollo深度磁盘清理

随便看看