Buenos días a todos,

Hace un tiempo, nuestro compañero Ivan nos explicó perfectamente en este post en qué consistía este problema y nos ofreció una posible solución ampliando el espacio de la base de datos en disco.

Bien, si en lugar de ampliar espacio queremos «hacer limpieza» tenemos que tener en cuenta los siguientes puntos:

– Primero de todo hacer un snapshot de la máquina virtual para tener un estado estable y bueno para volver atrás.

– Mirar el tamaño actual de la base de datos VIM_VCDB completa, para ello podremos ir a SQL Management Studio y pulsar botón derecho sobre la base de datos VIM_VCDB.

Captura%2Bde%2Bpantalla%2B2014-10-17%2Ba%2Bla(s)%2B10.58.43.png

En nuestro caso el tamaño original era de 5,5GB.

Importante: Asegurarnos que en la unidad (normalmente la C:) en la que se ubican los archivos de MSSQL dispone de espacio libre almenos 2,5 veces el tamaño VIM_VCDB. Este punto es importante, puesto que el proceso de limpieza hará crecer bastante las tablas temporales y queremos evitar que se nos llene la unidad a mitad de proceso. En nuestro caso, VIM_VCDB ocupaba 5,5GB y la tabla de transacciones LOG llegó a crecer hasta 13 GB. Así que podéis hacer cálculos de lo que puede llegar a crecer en vuestro entorno 😉

– Ilimitar el crecimiento del fichero LOG de VCDB, para ello, en SQL Management Studio, iremos a las propiedades de VIM_VCDB y en la sección «Files» editaremos «VIM_VCDB_log» indicando «Unrestricted File Growth», el modo de crecimiento lo podemos indicar en 10 MB.

Captura%2Bde%2Bpantalla%2B2014-10-17%2Ba%2Bla(s)%2B11.09.50.png

– Detener los servicios de «VMware VirtualCenter Server», seguramente nos pida también detener el servicio «VirtualCenter Management Webservices».

– Con esto ya podremos ejecutar la limpieza de registros en SQL. Para ello, pulsaremos botón derecho encima de la base de datos en cuestión y ejecutaremos una nueva consulta (o new query) con el siguiente contenido:

truncate table vpx_event_arg;
delete from vpx_event;

Captura%2Bde%2Bpantalla%2B2014-10-17%2Ba%2Bla(s)%2B11.34.59.png

Nota: Este proceso puede tardar varios minutos/horas, dependiendo del espacio que ocupe la base de datos originalmente, en nuestro caso el proceso duró unos 50 minutos.

– Una vez finalizado el proceso, podremos realizar una reducción de la base de datos, para optimizar aún más el espacio que ocupa el conjunto. Para ello pulsaremos botón derecho nuevamente encima de VIM_VCDB y seleccionaremos «Tareas –> Reducir Base de datos» (o Tasks –> Shrink Database):

Captura%2Bde%2Bpantalla%2B2014-10-17%2Ba%2Bla(s)%2B11.40.46.png

– Ya podremos cerrar SQL Management Studio y levantar nuevamente los servicios de «VMware VirtualCenter Server» y «VirtualCenter Management Webservices».

– Si todo ha ido bien, no nos olvidemos de eliminar el snapshot que habíamos hecho en el primer paso 😉

Con estos pasos, habremos reducido el tamaño de nuestra base de datos y de sus logs lo máximo posible, en nuestro ejemplo pasamos de 5,5GB iniciales a tan sólo 921MB ocupados en disco.

¡Hasta el próximo post!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Post Relacionados: