【问题标题】:Database exception - General error: 1021 Disk full数据库异常 - 一般错误:1021 磁盘已满
【发布时间】:2017-10-30 15:31:18
【问题描述】:

谁能帮我理解为什么这个查询说光盘已满?

数据库异常

SQLSTATE[HY000]:一般错误:1021 磁盘已满

(/tmp/#sql_1445_3.MAI);等待有人释放一些空间...

(errno: 28 "设备上没有剩余空间")

查询

【问题讨论】:

  • 错误本身已经够清楚了
  • 可能磁盘已满?检查服务器的可用空间? df -h
  • 请在此处以纯文本形式发布代码、错误、示例数据或文本输出,而不是难以阅读的图像,不能复制粘贴以帮助测试代码或在答案中使用,并且对使用屏幕阅读器的人怀有敌意。您可以编辑问题以在问题正文中添加代码。使用{} 按钮来格式化任何代码块,或者使用四个空格缩进以获得相同的效果。 我们无法将您的屏幕截图作为代码运行。
  • 如果它说您的磁盘已满,可能是您的磁盘已满。
  • 查询优化不佳,需要有一个基于 MyiSAM 磁盘的临时表,以便 MySQL 可以处理结果...您应该使用 INDEXES 优化表。请在此处发布 EXPLAIN [查询] 结果

标签: mysql sql


【解决方案1】:

错误是由您的 SQL 服务器提供的,而不是您的查询。 您必须在服务器端腾出空间,它没有可用空间并且无法执行任何查询。

【讨论】:

  • 噢,好吧,我明白了,所以这意味着数据库已满,而不是导致它的查询。对吗?
  • 不,它说空间磁盘已满,而不是数据库,你不能在没有任何可用空间的服务器上拥有一点数据库。是的,这是服务器错误而不是查询
【解决方案2】:

这是服务器问题。只有楼主能解决。

这意味着 /tmp 已满。当您进行太多备份时,这是一个非常常见的错误。

【讨论】:

  • 所以这意味着它的查询完全没有问题吗?服务器有问题?
  • 真正的问题是查询优化不好
猜你喜欢
  • 1970-01-01
  • 2011-07-13
  • 1970-01-01
  • 2014-06-08
  • 2021-04-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多