/dev/mapper/vg_xxx-lv_root 100% 磁盘打满解决方式及思路

上午同事反应MySQL连不上了,我到服务器上用"df -h"查一下磁盘,发现磁盘打满了。解决顺便记录一下流程:

  • 查看磁盘状态命令:df -h
  • 查看目录下各文件(夹)所占磁盘大小命令:du -sh *

磁盘打满截图:

排查方式:

如图中Mount on所示,该磁盘在 "/" 根目录下,磁盘打满;因此我们基于 "/" 目录查询较大(>1G)的文件,处理掉即可。

查询命令:

find / -type f -size +1G | xargs ls -lat


从图中我们发现占用磁盘的大多是 /var/lib/mysql/mysql-bin.000xxx、/var/log/mysqld.log 等MySQL的日志文件,这些属于MySQL操作日志以及系统日志文件。我们需要处理掉这些,当然不能直接 rm 删掉,否则MySQL会报错。

一、处理/var/lib/mysql/mysql-bin.000xxx文件:

登录MySQL并执行:reset master ; 立即清空操作日志,这些日志是MySQL-binlog用于恢复误删除数据时使用的,谨慎。

其他处理方式:
1、 purge master logs to 'mysql-bin.000xxx';  //清除mysql-bin.000xxx日志

2、 purge master logs before '2020-02-28 13:00:00';  //清除2020-02-28 13:00:00前的日志

3、 purge master logs before date_sub(now(), interval 3 day);  //清除3天前的bin日志

4、 修改my.cnf文件:在 log-bin=mysql-bin 下一行加上并重启MySQL:expire_logs_days=3    只保存近三天操作日志

 

二、处理/var/log/mysqld.log文件

不能直接删除,置空即可:

echo "" > /var/log/mysqld.log

三、处理其他(日志)文件

确定没有用后置空或删除:

#置空:
echo "" > access.log0005*

#删除:
rm -f access.log0005*

 

评论 27
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_陈哈哈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值