systemadmin.es > DBA > Error writing file ‘/tmp/JNIMzzat’ (Errcode: 28)

Error writing file ‘/tmp/JNIMzzat’ (Errcode: 28)

Al realizar una consulta en una base de datos MySQL nos podemos encontrar que reporta el siguiente error:

Error writing file '/tmp/JNIMzzat' (Errcode: 28)

Mediante perror podemos consultar los códigos de errores de MySQL, en este caso nos dice:

# perror 28
OS error code  28:  No space left on device

No es que se haya quedado sin espacio en el datadir del MySQL, sino que se ha quedado sin espacio dónde escribe los ficheros temporales, por defecto, en el /tmp. Se controla mediante la variable tmpdir:

mysql> show variables like 'tmpdir';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| tmpdir        | /tmp  |
+---------------+-------+
1 row in set (0.00 sec)

Si consultamos el espacio en el sistema de ficheros, es posible que aparezca que hay espacio libre:

# df -hP /tmp/
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/local-tmp  4.0G  147M  3.6G   4% /tmp

Esto es así porque lo ha llenado con la query, pero al fallar ha vuelto a liberar el espacio. Por lo tanto, deberemos o mover el tmpdir a otro sistema de ficheros con más espacio o ampliar dicho sistema de ficheros.

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>