正在家里看美剧在,同事微信call我表示所有接口都不行了,服务器貌似崩了。
查找原因
查看后发现是 MySQL
报错:
ERROR 1030 (HY000): Got error 28 from storage engine
一番 google
后发现是由于系统磁盘临时空间不足导致。
在服务根目录下运行:
[root@iZ****tecZ /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 40G 38G 16M 100% /
tmpfs 1.9G 0 1.9G 0% /dev/shm
可以看到已经磁盘已经占用 100%
了。
解决方案:
清理服务器,腾出空间来。
先找出哪些文件文件夹占用空间比较多,一步一步找到,一般是日志文件或者定时备份的文件压缩包比较占空间。
这里涉及到查找文件夹或者文件占用空间的比较有用的命令,记录一下:
[root@iZ****tecZ /]# du -hm --max-depth=2 | sort -nr | head -12
38053 .
34432 ./var
31423 ./var/www
1815 ./var/log
1579 ./bak20160908
1334 ./usr
1086 ./var/lib
972 ./bak20160908/geo12345
444 ./usr/share
416 ./lib
354 ./bak20160908/test
330 ./lib/modules
- 命令
du -hm --max-depth=2 | sort -nr | head -12
这个命令的意思是目录下占用空间从大到小排序,列出前12个。 -
du -h --max-depth=2 /var/www/html
这个命令可以列出/var/www/html
目录下子文件夹和文件占用空间大小,深度--max-depth=2
根据需要调节,表示子文件夹层数。 -
ll -lh
当前文件夹下所有文件的大小、权限、归属等信息。
经过一番查找,由于忘记关掉 ThinkPHP
的 logs
功能,导致在网站的 RunTime/Logs
里面存在大量日志文件占掉了大把的空间,占了磁盘总大小40G中的23G,删除后服务器恢复正常。
标题:服务器MySQL报错ERROR 1030 (HY000): Got error 28 from storage engine
原文链接:https://beltxman.com/1838.html
若无特殊说明本站内容为 行星带 原创,未经同意请勿转载。
文章不错非常喜欢