写在前面
一天早上,同事和我讲说,服务器好像无法写入数据进去了。似乎是磁盘满了,然后叫我找一下原因,解决一下,,,
然后我就只有开始弄诺。。。
df -lh
发现/挂载点确实饱满了,达到use100%,这样当然没法用了
第一步找到大文件
https://newsn.net/say/centos-find-bigfile.html(如何查找大文件)
我先把大于1G的文件按降序排出来
find / -type f -size +1024M -print0 | xargs -0 ls -Slh
这样就能看到哪些文件占用比较大,或者能够发现一些其他的问题
然后,我就发现MySQL数据存储目录下有大量的master.0001之类的数据库操作日志文件。这些文件占用了很多的空间。接下来,就是把这些日志文件处理掉。
开启MySQL binlog日志主要有以下三个目的:
1.做数据恢复,当你的数据库出现问题了,可能可以通过binlog日志对你的数据库
进行拯救
2.主从数据库之间数据的同步
3.可能你会使用maxwell对数据进行采集
我这里,没有什么特别的情况,我就直接把MySQL的binlog关掉了,接着,删除之前的操作日志文件。有点简单粗暴。
方法就是注释掉:my.cnf里面的#log-bin=master
当然,比较好的其实还是开启,然后定期清理日志文件,这样还是比较好的。
假如,你发现的是其余文件比较大,你也可以跟到那个文件目录去,看看具体是什么些数据,大致就是这样了