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.confy cambie la líneadbpath=/var/lib/mongodba la ruta que desee, p. Ej.dbpath=/home/user/data/mongodbmongodbusuario escriba en ella, por ejemplochown $USER -R /home/user/data/mongodbsudo service mongodb restartTenga 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 stopfuente
/var/lib/mongodbNecesitas reiniciar el demonio para que los cambios surtan efecto.
fuente
Si inicia mongodb desde la línea de comandos, puede usar el
--dbpathargumento:mkdir mydata && mongod --dbpath mydatapuede 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
sudoy obtuve un error. Así que usasudopara 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