环境:windows
之前同事写了个存储过程,处理的数据量很大,今天发现执行过程中出现了这么个错误:
java.sql.SQLException: Error writing file 'C:\Windows\TEMP\MYF1F1.tmp' (Errcode: 28 - No space left on device)
硬盘空间不足是个什么鬼,这个报错明显是说临时文件过大硬盘装不下了,赶紧查下mysql临时文件目录在哪。
show variables like 'tmpdir';
之前临时文件目录在C盘,已看C盘只剩4.66G空间了,里面的东西又不敢乱动,只能修改一下临时文件的目录了。
修改mysql安装目录下的my.ini文件,在[mysqld]下加一句tmpdir=G:/mysql/temp(你要放的路径)
PS:这里要说明一下的是这个路径不使用要用\分隔,\t会被转义成制表符,从而导致mysql服务启动失败且没有任何错误报告
重启mysql服务
service mysqld restart
再次查看临时文件目录会发现修改成功
参考:
https://blog.pythian.com/mysql-myini-gotcha-on-windows/
https://blog.csdn.net/weixin_30799995/article/details/95712010