Skip to content

MongoDB. Repara tus bases de datos

14 septiembre 2014
tags:

MongoDB_Logo_Full

Cuando estamos trabajando con MongoDB y estamos realizando operaciones de manera continuada sobre una Base de Datos: crear colecciones, insertar documentos, eliminar documentos, eliminar colecciones… Puede que nuestras Bases de Datos lleguen a ocupar mucho más espacio en disco del que aparentemente deberían ocupar.

Personalmente, me he encontrado situaciones, en las que he estado haciendo pruebas con Bases de datos, en las cuales creaba varias colecciones, insertaba un montón de documentos, creaba índices, eliminaba documentos… y, por último, eliminaba todas las colecciones (y documentos) para dejar mi Base de datos limpia. En este punto observaba cómo la base de datos ocupaba un espacio excesivo en disco en comparación con los datos que tenía. Buscando el por qué de este comportamiento, estuve estudiando el modelo de almacenamiento en disco de MongoDB, para conocer cómo almacena realmente los documentos en el disco y encontré que, cuando una base de datos se “desmadra”, podemos ejecutar un comando para repararla.

Tenemos dos modos de hacerlo:

1. Reparar una única base de datos

Para ello, desde la consola de MongoDB y con nuestro mongod ejecutándose, lanzamos el siguiente comando:

> use myDb
> db.repairDatabase()

+Info: myDb es el nombre de la base de datos que vamos a querer reparar

2. Reparar todas las bases de datos

En este caso, debemos detener todos los procesos mongod que tengamos ejecutándose, y lanzar el siguiente comando desde nuestro Terminal:

mongod --repair

De este modo, MongoDB comenzará a reparar todas las Bases de Datos y mostrará la evolución del proceso en pantalla.

Espero que estos comandos os sean útiles y ya sabéis: cualquier mejora, sugerencia o crítica será bienvenida 😉

 Lecturas Recomendadas

Más Info

Anuncios
No comments yet

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: