1030从存储引擎获得错误28

时间:2012-05-17 07:10:45

标签: mysql

我正在开发一个项目,我需要为每个想要查看演示应用程序的用户创建一个包含300个表的数据库。它运行正常,但今天我正在测试一个新用户看到一个演示,它向我展示了这个错误消息

1030 Got error 28 from storage engine

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

11 个答案:

答案 0 :(得分:391)

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

答案 1 :(得分:32)

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

答案 2 :(得分:10)

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

答案 3 :(得分:6)

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

答案 4 :(得分:2)

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

echo "clear" > access.log

答案 5 :(得分:2)

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

答案 6 :(得分:1)

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

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

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

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

我找到了这个解决方案here

答案 7 :(得分:0)

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

答案 8 :(得分:0)

sudo su


cd /var/log/mysql

最后输入:> mysql-slow.log

这对我有用

答案 9 :(得分:0)

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

答案 10 :(得分:0)

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

查看选项:tokudb_fs_reserve_percent