查看mysql的log-error日志发现以下错误:mysql
ERROR 3 (HY000): Error writing file '/tmp/MYbEd05t' (Errcode: 28)sql
这是因为mysql运行sql时会产生临时文件,这个临时文件大小取决于sql语句和表的大小,当存放临时文件的分区“/”大小不足的时候会出现上述错误。这时候须要更改临时文件目录的位置到空间足够的分区下,步骤以下:服务器
1.首先找到临时文件目录位置,在mysql命令行模式下输入:spa
show global variables like '%tmpdir%';命令行
2.确认该位置下的分区空间是否能够释放出足够的空间,或者更改其临时文件目录:日志
set global tmpdir = '/data/mysqltemp';code
3.接下来还须要修改mysql的配置文件my.cnf,在其中修改或者[mysqld]区块下新增以下配置:部署
tmpdir=/data/mysqltempit
4.再次执行步骤1,确认是否修改为功class
5.最后给新增的临时文件目录授予可写权限,确保可以正确写入:
chmod a+w /data/mysqltemp
最后如果仍未生效,能够在不影响业务运行条件下尝试重启该mysql服务,对新部署mysql的服务器也应该尽早把临时文件目录更改至空间富余的分区下,避免往后没必要要的麻烦。