查看 MySQL 错误文件后,我发现了有关磁盘空间的错误。现在我认为这是 MySQL 崩溃的原因:
[root@xxxx ~]# cat /var/lib/mysql/xxxx.com.err
120528 17:45:05 [Note] Crash recovery finished.
/usr/sbin/mysqld: Disk is full writing './mysql-bin.~rec~' (Errcode: 28). Waiting for someone to free space... (Expect up to 60 secs delay for server to continue after freeing disk space)
这可能是导致飞机坠毁的原因吗?
答案1
是的,磁盘空间不足会导致系统崩溃。这是一种应该避免的危险情况。进程可能会用尽空间,日志文件可能会填满等。某些应用程序和守护进程(例如 MySQL)如果磁盘空间不足,就会停止或崩溃。
就您而言,您的系统似乎没有任何分区。您应该提供输出以df -h
启动...
从那里,您可能想看看哪些目录占用了最多的空间:
du -skh /*
应该提供哪些顶级目录是最大的。我更喜欢ncdu 实用程序为此,但你不能指望它在大多数系统上安装。
使用du -skh /*
,你会得到如下输出:
[root@xx /]# du -skh /*
8.4M /bin
37M /boot
124K /dev
110M /etc
192K /home
.
.
.
5.8G /usr
3.7G /var
41G /yum
/var
例如,如果您想深入研究,cd /var
然后运行du -skh *
并寻找最大的空间消耗者……但当然,发现这一过程已在此网站上多次介绍过。查看这些相关问题以获取更多建议:
答案2
这当然是一个开始的地方。尝试找出占满分区的内容/
并删除一些文件,看看会发生什么
find / -xdev -maxdepth 1 -exec du -sh {} \;
将帮助您找出哪个目录树正在填满磁盘。
答案3
是的,根据您的 MySQL 错误日志,这是崩溃的原因。您可能需要清空日志文件以释放一些空间或移动 MySQL 数据目录到其他目录。
错误代码 28 代表“设备上没有剩余空间”