我想改变超过100Gb的MySQL表 根据手册,MySQL首先创建表的更改副本,然后用新表替换它。
但是,MySQL试图在/ tmp中创建副本,但文件系统要小得多。 结果,mysql失败并出现以下错误:
ERROR 3 (HY000) at line 1: Error writing file '/tmp/STa3x0Vi' (Errcode: 28)
如何让mysql变得更聪明?
答案 0 :(得分:1)
根据Marc发布的链接,你应该这样做:
export $TMPDIR=/some/other/path/with/enough/space
现在,改变你的表......
答案 1 :(得分:0)
df -h
检查/tmp
分区的大小(如果是分区),并确保有足够的可用空间在那里创建备份。如果没有,请更改临时目录。