Tengo TRUNCATE
una tabla enorme (~ 120Gb) llamada files
:
TRUNCATE files;
VACUUM FULL files;
El tamaño de la tabla es 0, pero no se liberó espacio en disco. ¿Alguna idea de cómo recuperar mi espacio en disco perdido?
ACTUALIZACIÓN: El espacio en disco se liberó después de ~ 12 horas, sin ninguna acción de mi parte. Yo uso el servidor Ubuntu 8.04.
postgresql
truncate
disk-space
Adam Matan
fuente
fuente
Respuestas:
Según los comentarios en la fuente ,
truncate
crea un nuevo archivo de almacenamiento vacío y elimina el archivo de almacenamiento anterior en el momento de la confirmación. (Los documentos sugieren que "archivo de almacenamiento" es solo un archivo en lo que respecta al sistema operativo, pero podría estar malinterpretando la terminología).Como parece estar eliminando un archivo, puedo imaginar algunos casos en los que el sistema operativo subyacente podría no liberar ese espacio de inmediato. Me imagino que, en algunos casos, el archivo de almacenamiento podría terminar en la Papelera de reciclaje en Windows, por ejemplo. Pero en mi caso, truncar una tabla en PostgreSQL 9. algo aumentó inmediatamente el espacio libre en Windows.
El truncamiento también se registra en el registro WAL. No sé cuánto efecto podría tener eso.
fuente