MySQL默认将 /tmp 目录设为了临时空间使用,报“ Error writing file ‘/tmp/MLLGyECY’ (Errcode: 28 – No space left on device) ”这个错的原因是/tmp目录容量不够大,MySQL在执行相关操作时会因为临时空间不足引起的。
解决这个错误有两种办法
1、给/tmp目录扩容
2、换一个空间大一点的目录作为MySQL的临时空间
第二种相对比较容易,下面以第二种作为范例演示。
查看MySQL当前的tmpdir路径
mysql> show variables like 'tmpdir';
root登录shell
cd / mkdir temp #创建新的临时文件目录 cd /temp mkdir mysql #在目录下创建mysql专用目录 chmod -R 777 /temp #将目录及所属文件权限设置为777
修改MySQL的配置文件, 在 [mysqld] 下面加上配置项:
tmpdir = /temp/mysql
重启mysqld
再次查看MySQL当前的tmpdir路径
mysql> show variables like 'tmpdir';
已经显示为刚才创建的目录了