mysql数据库错误 Error writing file '/tmp/...' (Errcode: 28)

post by rocdk890 / 2016-10-11 13:20 Tuesday linux技术
  今天在执行一个sql语句的时候遇到了一个错误 java.sql.SQLException: Error writing file '/tmp/MYkn6JQ8' (Errcode: 28)。搜了一下,这个问题应该是因为错误提示中提示的临时目录的空间不足导致的。
这个错误如果想看到它的现象,就必须在sql运行时来监视这个临时文件夹的大小,就可以看到mysql在/tmp下创建了一个临时文件,这个临时文件的大小取决于sql语句以及表的大小。
我表中现有大概29万行数据,大概有30列,使用insert into m (...) select ...from mp where contentLen < 3145729 group by concat(...)时,mysql会在临时目录下创建了一个大概将近6G的临时文件,我磁盘只剩了5G,所以导致了mysql报写文件错误。

ps:http://blog.sina.com.cn/s/blog_69bd80940100n8dc.html
夜空- 本站版权
1、本站所有主题由该文章作者发表,该文章作者与夜空享有文章相关版权
2、其他单位或个人使用、转载或引用本文时必须同时征得该文章作者和夜空的同意
3、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
4、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
5、原文链接:blog.slogra.com/post-671.html

标签: mysql linux tmp 临时文件

评论: