1030 从存储引擎收到错误 28

Posted

技术标签:

【中文标题】1030 从存储引擎收到错误 28【英文标题】:1030 Got error 28 from storage engine 【发布时间】:2012-05-24 18:34:42 【问题描述】:

我正在做一个项目,我需要为每个想要查看演示应用程序的用户创建一个包含 300 个表的数据库。它工作正常,但是今天当我与新用户一起测试以查看演示时,它向我显示了此错误消息

1030 Got error 28 from storage engine

花了一些时间谷歌搜索后,我发现这是一个与数据库空间或临时文件有关的错误。我试图修复它,但我失败了。现在我什至无法启动mysql。我该如何解决这个问题,我也想将尺寸增加到最大,这样我就不会一次又一次地面临同样的问题。

【问题讨论】:

显而易见...存储 mysql 数据的分区上是否有足够的可用空间?你在什么平台上运行?本地主机还是托管公司? @DCoder :- 我在亚马逊云上有一个服务器 @ShowketBhat 我有同样的问题,我的/tmp 文件夹有 100% 的空间使用率。可以只删除这个 /tmp 文件夹中的所有文件吗?还有一个问题,为什么它不自动删除? 【参考方案1】:

我在 AWS RDS 中遇到了同样的问题。这是由于 Freeable Space(硬盘存储空间)已满。您需要增加空间,或删除一些数据。

【讨论】:

【参考方案2】:

对此进行扩展(即使这是一个较老的问题);这可能不是关于 MySQL 空间本身,而是关于一般空间,假设用于 tmp 文件或类似的东西。 我的 mysql 数据目录未满,/(根)分区是

【讨论】:

【参考方案3】:

Mysql 错误“28 from storage engine” - 表示“磁盘空间不足”。

在下面显示磁盘空间使用命令。

myServer# df -h

结果一定是这样的。

Filesystem    Size    Used   Avail Capacity  Mounted on
/dev/vdisk     13G     13G     46M   100%    /
devfs         1.0k    1.0k      0B   100%    /dev

【讨论】:

有关更多信息,如果 /tmp 文件系统达到 100% 的使用率,您将收到相同的错误。 即使你的 Mysql data_dir 在另一个有空闲空间的分区(或磁盘)中,你也必须在 / 和 /tmp 上有空闲空间(当然你可以有最后一个在不同的分区/磁盘) 你救了我的命,我找到了 390 Gb 的慢日志文件(( 不错的答案。它节省了我很多时间。 +1【参考方案4】:

我的 /tmp 是 %100。删除所有文件并重新启动 mysql 后一切正常。

【讨论】:

【参考方案5】:

我的 /var/log/apache2 文件夹是 35g,而 /var/log 中的一些日志总计是我 40g 硬盘的另外 5g。我清除了所有 *.gz 日志,在确保其他日志如果我弄乱它们不会做坏事后,我也将它们也清除了。

echo "clear" > access.log

等等

【讨论】:

这是一种非常奇怪的清除日志文件的方法,不是吗?为什么不直接 rm 呢? 也许你可以保留文件和权限? 我推荐使用truncate清除日志,truncate -s 0 access.log【参考方案6】:

由于我的复制二进制日志,我遇到了类似的问题。

如果是这种情况,只需创建一个 cronjob 来每天运行此查询:

PURGE BINARY LOGS BEFORE DATE_SUB( NOW(), INTERVAL 2 DAY );

这将删除所有超过 2 天的二进制日志。

我找到了这个解决方案here。

【讨论】:

【参考方案7】:

一个简单的: $sth->finish(); 可能会让你不用担心这个。 Mysql使用系统的tmp空间而不是自己的空间。

【讨论】:

【参考方案8】:

检查您的 /backup 以查看是否可以删除旧的不需要的备份。

【讨论】:

【参考方案9】:
sudo su


cd /var/log/mysql

最后输入:> mysql-slow.log

这对我有用

【讨论】:

【参考方案10】:

删除问题数据库,然后重启 mysql 服务(例如sudo service mysql restart)。

【讨论】:

【参考方案11】:

如果你想使用 tokudb 插件 如果您的可用空间少于 5%(默认情况下),就会发生这种情况。

查看选项:tokudb_fs_reserve_percent

【讨论】:

以上是关于1030 从存储引擎收到错误 28的主要内容,如果未能解决你的问题,请参考以下文章

Mysql'从存储引擎得到错误-1'错误

无法从存储引擎读取自增值,错误号:1467

mysql 无法从存储引擎读取自增值

表 '/mysql-tmp/#sql_78b5_0.MYI' 的密钥文件不正确;或“从存储引擎得到错误 x”

如何从同一应用项目中的 python2.7 微服务访问谷歌应用引擎 ndb 数据存储

在kubernetes引擎中将数据从docker容器存储到GCS中时,得到 "权限不足 "的错误信息。