Edité el archivo de configuración de MongoDB para almacenar sus datos /home/user/data/mongod
.
Pero los datos aún se escriben en el directorio anterior, supuestamente porque no se otorgan los permisos a la nueva carpeta. ¿Cómo puedo darle a MongoDB los permisos necesarios para ese directorio?
Respuestas:
Para cambiar la ubicación utilizada por MongoDB para almacenar sus datos, debe:
/etc/mongodb.conf
y cambie la líneadbpath=/var/lib/mongodb
a la ruta que desee, p. Ej.dbpath=/home/user/data/mongodb
mongodb
usuario escriba en ella, por ejemplochown $USER -R /home/user/data/mongodb
sudo service mongodb restart
Tenga en cuenta que si tiene datos en la ubicación anterior que desea conservar, primero deberá detener el servicio MongoDB, mover manualmente los archivos y luego iniciar el servicio nuevamente.
Para detener el servidor MongoDB use
sudo service mongodb stop
fuente
/var/lib/mongodb
Necesitas reiniciar el demonio para que los cambios surtan efecto.
fuente
Si inicia mongodb desde la línea de comandos, puede usar el
--dbpath
argumento:mkdir mydata && mongod --dbpath mydata
puede encontrarse con algún problema relacionado con "el archivo existe" o algo así, es una limitación bien conocida de MongoDb, más sobre esto aquí . Simplemente cambie la unidad de disco y pruebe si ahora no tiene ese problema nuevamente.fuente
Me encontré con el mismo problema hoy y resolví el problema usando los siguientes pasos.
Edite el archivo mongod.conf y edite el valor de la variable dbPath.
Luego use el siguiente comando para iniciar el servicio mongod
Traté de ejecutar el comando anterior sin
sudo
y obtuve un error. Así que usasudo
para ejecutar el comando.fuente
mv the / var / lib / mongodb (el directorio donde guardó los datos) a / path y chown mondodb: mongodb / path (el directorio donde desea guardar los datos)
edite el /etc/mongod.conf
servicio mongod restart (si no puede conectarse, verifique la ruta / si no contiene el mongod.lock, si existe, elimínelo y reinicie nuevamente)
fuente