Mysql Не удается создать / записать в файл ошибка № 13

Я создал представление Django, которое возвращает некоторые данные после чтения из MySql DB. Когда я пытаюсь получить около 6000 строк из базы данных, все работает нормально, и представление возвращает HttpResponse как ожидается.Однако, когда я пытаюсь получить 7000+ строк, я получаю следующую ошибку

(1, "Can't create/write to file '/home/nipun/mysql_temp/MYzplJok' (Errcode: 13)")


Раньше я думал, что ошибка может быть связана с исчерпанием места для / temp, поэтому я изменил настройку tempdir в my.cnf.
Я также удостоверился, что новый tmpdir / home / nipun / mysql_temp и его родительские каталоги доступны для записи посредством смены владельца. Хотя это не проблема Django, вот представление

def query_json(request):
    from django.utils import simplejson
    objects=Publisher.objects.filter(location='ROOM_01',sensor_name='CPU_TEMPERATURE').order_by('-id')[0:9000]

    json = simplejson.dumps( [{"reading": float(o.reading),
                           "timestamp": str(o.timestamp)
                       } for o in objects] )

    return HttpResponse(json,mimetype="application/json")


Таким образом, замена фильтра с 9000 на 6000 работает нормально.
Дополнительная информация об ошибке содержится в трассировке стека Django.

errorclass  
<class '_mysql_exceptions.InternalError'>
errorvalue  
InternalError(1, "Can't create/write to file '/home/nipun/mysql_temp/MYuotga9' (Errcode:     13)")
error   
(<class '_mysql_exceptions.InternalError'>,
InternalError(1, "Can't create/write to file '/home/nipun/mysql_temp/MYuotga9' (Errcode: 13)"))

РЕДАКТИРОВАТЬ
В соответствии с комментарием, я попробовал это в моем приглашении MySQL

mysql> CREATE TEMPORARY TABLE t (i int);
ERROR 1005 (HY000): Can't create table 't' (errno: 13)

Таким образом, теперь, по сути, проблема заключается в том, как разрешить MySQL писать во временный каталог

6
задан Nipun Batra 27 December 2011 в 11:55
поделиться