当我在mysql中运行Alter命令时,在我现有的表中添加一个新列。我正面临这个错误。
ERROR 1878 (HY000): Temporary file write failure.
有关于此的任何想法吗?请指导。
非常感谢。
答案 0 :(得分:4)
这个错误最有可能是因为MySQL使用的临时目录太小(正如其他人在评论中提到的那样)。在许多情况下,在MySQL中更改表将导致表被复制,并且您将需要临时目录中至少与被更改的表所使用的空闲空间一样多。
临时目录的目标在变量my.cnf
下的tmpdir
文件中指定。 my.cnf
通常存储在Ubuntu上的/etc/mysql/my.cnf
中(不确定您使用的操作系统)。您可以更改tmpdir
变量指向的位置(到另一个更大的分区),或更改指定目录的可用大小。
例如,在Ubuntu上,您可以使用df -h
查看各种文件系统的大小。
答案 1 :(得分:0)
在show variables like 'log%';
下找到更详细的日志(找到stateListAnimator
的正确路径