我正在开发一个项目,我需要为每个想要查看演示应用程序的用户创建一个包含300个表的数据库 . 它工作正常,但今天我正在测试一个新用户看到一个演示,它向我展示了这个错误消息
1030 Got error 28 from storage engine
花了一些时间谷歌后,我发现这是一个与数据库或临时文件的空间有关的错误 . 我试图解决它,但我失败了 . 现在我甚至无法启动mysql . 我怎么能解决这个问题,我还希望将大小增加到最大,以便我不会一次又一次地面对同样的问题 .
Mysql错误“28来自存储引擎" - means "没有足够的磁盘空间” .
要显示下面的光盘空间使用命令 .
myServer# df -h
结果必须是这样的 .
Filesystem Size Used Avail Capacity Mounted on /dev/vdisk 13G 13G 46M 100% / devfs 1.0k 1.0k 0B 100% /dev
扩展这个(即使这是一个较老的问题);这可能不是关于MySQL空间本身,而是关于空间,一般来说,假设tmp文件或类似的东西 . 我的mysql数据目录未满,/(根)分区是
我在AWS RDS中遇到了同样的问题 . 这是由于可用空间(硬盘存储空间)已满 . 您需要增加空间或删除一些数据 .
我/ tmp是%100 . 删除所有文件并重新启动mysql后一切正常 .
我的/ var / log / apache2文件夹是35g,而/ var / log中的一些日志总计是我的40g硬盘的另一个5g . 我清除了所有* .gz日志,并确保其他日志不会做坏事如果我搞砸了他们,我也清除了它们 .
echo "clear" > access.log
等等
检查/ backup以查看是否可以删除旧的不需要的备份 .
我有一个类似的问题,因为我的 replication 二进制日志 .
如果是这种情况,只需创建一个cronjob来每天运行此查询:
PURGE BINARY LOGS BEFORE DATE_SUB( NOW(), INTERVAL 2 DAY );
这将删除超过2天的所有二进制日志 .
我找到了这个解决方案here .
一个简单的:$ sth-> finish();可能会让你免于担心这件事 . Mysql使用系统的tmp空间而不是它自己的空间 .
sudo su cd /var/log/mysql
最后输入: > mysql-slow.log
> mysql-slow.log
这对我有用
9 回答
Mysql错误“28来自存储引擎" - means "没有足够的磁盘空间” .
要显示下面的光盘空间使用命令 .
结果必须是这样的 .
扩展这个(即使这是一个较老的问题);这可能不是关于MySQL空间本身,而是关于空间,一般来说,假设tmp文件或类似的东西 . 我的mysql数据目录未满,/(根)分区是
我在AWS RDS中遇到了同样的问题 . 这是由于可用空间(硬盘存储空间)已满 . 您需要增加空间或删除一些数据 .
我/ tmp是%100 . 删除所有文件并重新启动mysql后一切正常 .
我的/ var / log / apache2文件夹是35g,而/ var / log中的一些日志总计是我的40g硬盘的另一个5g . 我清除了所有* .gz日志,并确保其他日志不会做坏事如果我搞砸了他们,我也清除了它们 .
等等
检查/ backup以查看是否可以删除旧的不需要的备份 .
我有一个类似的问题,因为我的 replication 二进制日志 .
如果是这种情况,只需创建一个cronjob来每天运行此查询:
这将删除超过2天的所有二进制日志 .
我找到了这个解决方案here .
一个简单的:$ sth-> finish();可能会让你免于担心这件事 . Mysql使用系统的tmp空间而不是它自己的空间 .
最后输入:
> mysql-slow.log
这对我有用