MySQL 从存储引擎得到错误 122

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/68029/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-31 12:00:43  来源:igfitidea点击:

Got error 122 from storage engine

mysql

提问by

Got this from some mysql queries, puzzled since error 122 is usually a 'out of space' error but there's plenty of space left on the server... any ideas?

从一些 mysql 查询中得到这个,很困惑,因为错误 122 通常是“空间不足”错误,但服务器上还有足够的空间......有什么想法吗?

回答by

The answer: for some reason Mysql had its tmp tables on the /tmp partition which was limited to 100M, and was filled up by eaccelerator cache to 100M even though eaccel is limited to 16M of usage. Very weird, but I just moved eaccel cache elsewhere and problem solved.

答案:出于某种原因,Mysql 在 /tmp 分区上有它的 tmp 表,该分区限制为 100M,并且被 eaccelerator 缓存填充到 100M,即使 eaccel 的使用限制为 16M。很奇怪,但我只是将 eaccel 缓存移到其他地方并解决了问题。

回答by owenmarshall

Error 122 often indicates a "Disk over quota" error. Is it possible disk quotas exist on the server?

错误 122 通常表示“磁盘超出配额”错误。服务器上是否可能存在磁盘配额?

回答by Archil

Try to turn off the disk quota using the quotaoff command.

尝试使用 quotaoff 命令关闭磁盘配额。

Using the -a flag will turn off all file system quotas.

使用 -a 标志将关闭所有文件系统配额。

quotaoff -a

回答by longneck

are you using innodb tables? if so, you might not have auto-grow turned on and inno can't expand the table space any more.

你在使用 innodb 表吗?如果是这样,您可能没有打开自动增长并且 inno 无法再扩展表空间。

if these are myisam tables and it only happens on specific tables, i would suspect corruption. do a REPAIR on the tables in question.

如果这些是 myisam 表并且它只发生在特定的表上,我会怀疑腐败。对有问题的桌子进行修理。

回答by V Solve Enterprise

I resolve this issue by increasing my disk size. try df -h to check whether there are enough disk space on your server.

我通过增加磁盘大小解决了这个问题。尝试 df -h 检查服务器上是否有足够的磁盘空间。