网站建设天猫店wordpress文章seo方法
#1024程序员节#
一、背景
突然有一天,我的mysql报磁盘不足了。仔细查看才发现,是磁盘满了。而MySQL的日志文件占用了91个G.如下所示:
[root@host-172-16-14-128 mysql]# ls -lrth
总用量 93G
-rw-r----- 1 mysql mysql 1.1G 7月  30 2023 mysql-bin.000048
-rw-r----- 1 mysql mysql   68 7月  30 2023 mysql-bin.index
-rw-r----- 1 mysql mysql  20K 1月  29 11:49 mysql-error.log
-rw-r----- 1 mysql mysql 978K 1月  29 11:57 slowquery.log
-rw-r----- 1 mysql mysql 868M 1月  29 13:23 mysql-bin.000049
-rw-r----- 1 mysql mysql  91G 1月  29 13:23 mysqld.log
 
二、解决
首先需要注意的是,如果日志文件很重要,是不建议直接处理的。应该先备份日志,再删除,从而获得空间。或者进行扩容操作!
 我们尝试通过将日志写入"黑洞"中去。提示权限不够!其实是少写cat了,具体过程如下所示:
[root@host-172-16-14-128 mysql]# /dev/null >mysqld.log
-bash: /dev/null: 权限不够
[root@host-172-16-14-128 mysql]# whoami
root
[root@host-172-16-14-128 mysql]# 
[root@host-172-16-14-128 mysql]# su mysql
[root@host-172-16-14-128 mysql]# whoami
root
[root@host-172-16-14-128 mysql]# su - mysql
上一次登录:一 1月 29 13:26:31 CST 2024pts/2 上
[root@host-172-16-14-128 mysql]# cat /dev/null >mysqld.log
 
操作完,我们看mysqld.log的大小已经变小了。
[root@host-172-16-14-128 mysql]# ls -lrth
总用量 1.9G
-rw-r----- 1 mysql mysql 1.1G 7月  30 2023 mysql-bin.000048
-rw-r----- 1 mysql mysql   68 7月  30 2023 mysql-bin.index
-rw-r----- 1 mysql mysql  20K 1月  29 11:49 mysql-error.log
-rw-r----- 1 mysql mysql 978K 1月  29 11:57 slowquery.log
-rw-r----- 1 mysql mysql  11K 1月  29 13:27 mysqld.log
-rw-r----- 1 mysql mysql 868M 1月  29 13:27 mysql-bin.000049
 
然后,我们再看看磁盘的情况,发现数据盘使用率为68%,已经降下来了。
[root@host-172-16-14-128 mysql]# df -h | grep dev
devtmpfs                                        3.9G     0  3.9G    0% /dev
tmpfs                                           3.9G     0  3.9G    0% /dev/shm
/dev/mapper/centos_host--172--16--14--128-root   35G  9.0G   27G   26% /
/dev/vdb1                                       300G  202G   99G   68% /data
/dev/vda1                                      1014M  194M  821M   20% /boot
[root@host-172-16-14-128 mysql]#  
