miércoles, 3 de abril de 2013

Shrink Space

Qué sucede cuando tenemos una tabla que pesa bastante... digamos 3, 4 o 5 Gigas o quizás no tanto... y eliminamos un porcentaje importante de filas?... La respuesta es fácil... todo ese espacio alocado (traducción a lo indio de allocated) para esa tabla no es liberado... y sigue ocupando el mismo espacio en disco!... Bien... Cómo hacemos para liberarlo?

Sencillo:
ALTER TABLE schema.NOMBRE_TABLA enable row movement;
ALTER TABLE schema.NOMBRE_TABLA SHRINK SPACE;
ALTER TABLE schema.NOMBRE_TABLA disable row movement;
Con ésto, deberíamos poder recuperar ese espacio inutilizado... Espero haya sido de utilidad!

Si la tabla tiene índice function-based esto no nos será posible, lo que haríamos en ese caso es eliminar el o los índices, ejecutar las sentencias anteriores, y volver a crear los índices function-based .

No hay comentarios:

Publicar un comentario