Un poco de todo lo relacionado al area de la informatica... programacion, ocio, configuraciones, en fin herramientas que pueden ser utiles para un estudiante de ingenieria en ciencias y sistemas.

martes, 16 de diciembre de 2014

On 22:06 by Unknown in , , ,    No comments
La instalación de Mongodb es bastante sencilla, en mi caso la instale en ubuntu server 14.04.1 y una vez terminada la instalación ya es posible acceder a la consola de la base de datos simplemente tecleando el comando "mongo", bueno hasta ahí todo bien y ya pude trabajar con la bd pero al acceder un día después a la BD para mi sorpresa al teclear el comando "mongo" me aparece el error:

couldn't connect to server 127.0.0.1:27017 src/mongo/shell/mongo.js:145

Entonces a buscar en el mejor amigo que podemos tener, si, hablo de google y
en stackoverflow la mayoría de respuestas dicen que tienen que ver con que se bloquea la BD y es necesario desbloquearla y repararla pero no me funciono.

Otra solucion era reparar la bd y luego acceder por medio de mongo <ip_sistema> pero tampoco funciona, otras soluciones hablan de modificar la ip_bind o algun otro parametro en el archivo /etc/mongodb.conf (archivo de configuracion de mongo) pero sin solucion, reinstalar la bd y el mismo error.

En fin segui buscando pero ninguna solucion funcionaba entonces decidi regresar al sitio donde segui el tutorial para instalar la base de datos (link) y ejectuar nuevamete el comando:

tail -n 100 /var/log/mongodb/mongodb.log

Para verificar el estado de mongodb y en los resultados en una par de lineas me mostraba lo siguiente:

[initandlisten] ERROR: Insufficient free space for journal files
[initandlisten] Please make at least 3379MB available in /data/db/journal
or use --smallfiles
 
 
 
 
La razon por la que muestra este error es porque el disco duro no tiene espacio suficiente para los archivos journal y en mi caso estaba utilizando una maquina virtual con 4Gb de disco duro por lo que el espacio necesario no estaba disponible.

Buscando entonces que es el tal "journal"en Mongodb es como un tipo de sistema para optimizar el acceso a memoria por medio de la BD y como backup por si la BD llega a fallar, tiene una funcionalidad mas especifica pero hay que leer bien la documentación para entender como funciona realmente.

El archivo mongodb.conf tiene una parte en donde se puede desactivar la de journal y desactivando esta opción y reiniciando el sistema sorpresa!! ya es posible acceder a la consola por medio del comando "mongo".

solamente es de des-comentar la parte de nojournal = true





La solución entonces es desactivar que la base de datos trabaje con journal files cuando tenemos poco espacio en el disco duro o como en mi caso que necesitaba montar varios servidores sobre KVM y necesito asignarles pocos recursos, porque si se tiene el espacio suficiente no da ningún problema (probé por amor al arte en una VM con 10 Gb disponibles) solamente se instala, se reinicia el sistema y se conecta a la BD y lamentablemente antes de instalar Mongodb no encontré requisitos donde hablara del espacio libre que necesita la BD para trabajar o si Se me pasaron por alto, pero si alguien tiene el mismo problema esta solución le puede funcionar y con esto se evitan perdidas de tiempo mas quebraderos de cabeza.




0 comentarios:

Publicar un comentario