您的位置:首页 > 数据库 > MySQL

[备忘] Mysql操作出现Error writing file '/tmp/MYAkvdjr'错误

2017-12-29 13:17 621 查看
今天下午改了一下自己正在写的LazyCluster聚类脚本,从rcpt数据库里导出mx记录,在select语句后面加了一个order
by条件,结果脚本跑了一阵子就报错了:

   Traceback (most recent call last):
  File "./contCluster.py", line 621, in <module>
    main()
  File "./contCluster.py", line 600, in main
    mailscnt=toCluster_rcptdb()
  File "./contCluster.py", line 500, in toCluster_rcptdb
    cursor.execute(sql)
  File "build/bdist.linux-i686/egg/MySQLdb/cursors.py", line 166, in execute
  File "build/bdist.linux-i686/egg/MySQLdb/connections.py", line 35, in defaulterrorhandler
_mysql_exceptions.InternalError: (3, "Error writing file '/tmp/MYAkvdjr' (Errcode: 28)")

    一查:

    $ perror 28

OS error code  28:  No space left on device

    

    实在不懂,于是Google了一下发现原来是order by搞的鬼:当使用order by来排序时,Mysql需要一些临时空间来存储东东,此时若系统空间不足,就会出现往临时文件写内容时报错的现象,于是报出了Error writing file '/tmp/**' (Errcode: 28)之类的错误提示。

    

算了,去掉那个order by条件了,对于这么庞大的表格一sort开销也太大了。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐