Solución a Error: couldn’t connect to server 127.0.0.1:27017 en MongoDB

Posted by Gabriel on 4 octubre, 2014 in Programación, Solución a Problemas |

Si al intentar ejecutar el siguiente comando en un servidor Centos 7, tienen el mensaje «Error: couldn’t connect to server 127.0.0.1:27017 en MongoDB». Puede ser debido a un bug en MongoDB que en Centos 7 luego de instalar y reiniciar el server no encuentra el directorio  /var/run/mongodb . Para estar seguro que es este el problema se puede verificar en el log de mongo al intentar ejecutar el servicio con el comando service mongod start o su equivalente como sudo service mongod start. Para ver el log pueden hacerlo ejecutando el comando:

vi /var/log/mongodb/mongod.log (o con el editor de texto en consola que mas les guste cambiando vi por cat  o vim etc.) y deberían ver en el log este mensaje:

ERROR: Cannot write pid file to /var/run/mongodb/mongod.pid: No such file or directory

Si es asi, la solución que encontré en mi caso es la siguiente (Siguiendo la documentación en git en el repositorio oficial de MongoDB: https://github.com/mongodb/mongo/commit/50ca596ace0b1390482408f1b19ffb1f9170cab6)

1) Localizar el archivo init.d de mongo para aplicar el fix. En mi server lo encontré en /etc/rc.d/init.d/mongod  si editamos este file mongod (con el comando sudo vi mongod).

2)  Ahora debemos editarlo y añadir las líneas en negritas (se puede editar en consola presionando ia )

….

# for now. This can go away when this script stops supporting 1.8.
DBPATH=`awk -F ‘/^dbpath[[:blank:]]*=[[:blank:]]*/{print $2}’ «$CONFIGFILE»`
PIDFILE=`awk -F ‘/^pidfilepath[[:blank:]]*=[[:blank:]]*/{print $2}’ «$CONFIGFILE»`
PIDDIR=`dirname $PIDFILE`

mongod=${MONGOD-/usr/bin/mongod}

….

start()
{

# Make sure the default pidfile directory exists
if [ ! -d $PIDDIR ]; then
  install -d -m 0755 -o $MONGO_USER -g $MONGO_GROUP $PIDDIR
fi

# Recommended ulimit values for mongod or mongos
# See http://docs.mongodb.org/manual/reference/ulimit/#recommended-settings
#

….

3) Para salir del modo edición se debe presionar ESC y para guardar y salir presionar :wq

4) Ahora ya editado y de nuevo en consola, ejecutar mongodb con el comando sudo service mongod start y debería ejecutarse sin problemas…

Eso es todo, espero que le sea útil para quién tenga este problema como lo tuve yo.

Saludos!

 

Like

Etiquetas: , , ,

Copyright © 2011-2026 En Mi Tiempo Libre All rights reserved.
This site is using the Desk Mess Mirrored Child Child-Theme, v1.0, on top of
the Parent-Theme Desk Mess Mirrored, v2.5, from BuyNowShop.com