我在一个项目上工作,我需要为每个想要查看演示应用程序的用户创建一个具有300个表的数据库。它工作得很好,但今天当我用一个新用户测试看演示时,它向我显示了这个错误消息
1030 Got error 28 from storage engine
在花了一些时间谷歌后,我发现这是一个与数据库或临时文件空间有关的错误。我试着修好它,但失败了。现在我连mysql都启动不了。我怎么能解决这个问题,我也想增加大小到最大,这样我就不会一次又一次地面对同样的问题。
我在一个项目上工作,我需要为每个想要查看演示应用程序的用户创建一个具有300个表的数据库。它工作得很好,但今天当我用一个新用户测试看演示时,它向我显示了这个错误消息
1030 Got error 28 from storage engine
在花了一些时间谷歌后,我发现这是一个与数据库或临时文件空间有关的错误。我试着修好它,但失败了。现在我连mysql都启动不了。我怎么能解决这个问题,我也想增加大小到最大,这样我就不会一次又一次地面对同样的问题。
当前回答
一个简单的: 使用$ sth - >完成(); 这样你就不用再担心这个了。Mysql使用系统的tmp空间而不是它自己的空间。
其他回答
如果你想使用tokudb插件 如果空闲空间少于5%(默认),就会发生这种情况。
请参阅选项:tokudb_fs_reserve_percent
我也有类似的问题,因为我的复制二进制日志。
如果是这种情况,只需创建一个cronjob来每天运行这个查询:
PURGE BINARY LOGS BEFORE DATE_SUB( NOW(), INTERVAL 2 DAY );
这将删除所有超过2天的二进制日志。
我找到了这个解。
我的/tmp是%100。删除所有文件并重新启动mysql后,一切工作正常。
检查您的/backup,看看是否可以删除不需要的旧备份。
Mysql错误“28从存储引擎”-意味着“没有足够的磁盘空间”。
要显示下面的磁盘空间使用命令。
myServer# df -h
结果一定是这样的。
Filesystem Size Used Avail Capacity Mounted on
/dev/vdisk 13G 13G 46M 100% /
devfs 1.0k 1.0k 0B 100% /dev