mysql Got error 28 from storage engine

本文介绍了在执行MySQL表修改操作时遇到的空间不足错误,并详细解释了错误原因及解决步骤。通过检查临时目录空间、定位磁盘占用问题,最终解决了因tomcat日志文件占用空间过大导致的问题。

情景再现:

今天在执行修改表的命令,alter table doctor_info时,出现如下图错误




解决过程:

百度后发现原因是,mysql的临时目录空间不足。

1、首先,查询mysql的临时目录:

show variables like '%tmp%';



发现tmpdir的目录是 根目录下的/tmp


2、查看临时目录下的各个文件大小和总大小

首先查看/tmp目录下各个文件所占用大小,

ls -alth /tmp



/tmp目录下所有文件总的大小,

du -sh /tmp




我们发现/tmp下的文件占用都非常小,所以我继续查看/tmp所在磁盘的使用情况,



3、误解

当时发现used是50G,Use%是100%,所以证实了是,临时目录没有空间可用了,后来查到是因为tomcat的日志文件过多导致了磁盘满了。

我最初以为,/tmp的大小是50G,跟tomcat的日志文件/logs没有关系呀。原来我搞错了,这个50G是整个磁盘的大小,所有的文件夹共用这50G,到这里就真相大白了。

因为tomcat日志文件,占用了整个磁盘,导致临时目录没有空间,然后就出现了get error 28 from storage engine.


总结:

1、linux不可以指定某个文件夹的大小,df -h的命令显示的size是整个磁盘的大小

2、df命令,可以显示某个文件所在磁盘的使用情况

3、du -sh /tmp,查看某个文件夹下所有文件总的大小

4、ls -alth可以显示某个文件夹下占用磁盘情况

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值