【问题标题】:ERROR 1878 (HY000): Temporary file write failure in mysqlERROR 1878 (HY000): mysql 临时文件写入失败
【发布时间】:2015-01-23 12:25:48
【问题描述】:

当我在 mysql 中运行 Alter 命令以将新列添加到现有表中时。我正面临这个错误。

ERROR 1878 (HY000): Temporary file write failure.

对此有任何想法吗?请指导。

非常感谢。

【问题讨论】:

  • Mysql 将重新创建文件。确保您有足够的空间。
  • MySQL 服务器机器的硬盘已满?临时空间已满?
  • 如何为mysql增加分配给/tmp的空间?

标签: mysql alter


【解决方案1】:

这个错误很可能是由于 MySQL 使用的临时目录太小(正如其他人在 cmets 中提到的那样)。在许多情况下,更改 MySQL 中的表会导致表被复制,并且临时目录中的可用空间至少需要被更改的表所使用的空间。

临时目录的目标在my.cnf 文件中的变量tmpdir 下指定。例如,my.cnf 通常存储在 Ubuntu 上的/etc/mysql/my.cnf 中(不确定您使用的是什么操作系统)。您可以更改tmpdir 变量指向的位置(指向另一个更大的分区),或者更改指定目录的可用大小。

例如,在 Ubuntu 上,您可以使用 df -h 查看各种可用文件系统的大小。

【讨论】:

    【解决方案2】:

    /DATA/mysql/<log-file-name>.err下找到更详细的日志(用show variables like 'log%';找到正确的路径)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-01
      • 2013-05-09
      • 1970-01-01
      • 1970-01-01
      • 2015-03-08
      • 1970-01-01
      • 2012-10-27
      相关资源
      最近更新 更多