Nota: Los ficheros de datos de MongoDB normalmente se encuentran en /data/db
pero en mi instalación de Ubuntu están en /var/lib/mongodb
.
Reparar conservando los datos:
sudo mkdir /var/lib/mongodb0 sudo mongod --dbpath /var/lib/mongodb --repair --repairpath /var/lib/mongodb0 sudo mongod --dbpath /var/lib/mongodb0
Ahora que el servidor está arrancado con la versión reparada (/var/lib/mongodb0
) de tus datos originales (from /var/lib/mongodb
) usa el cliente de mongo para verificar que todo está bien. En ese caso reemplaza /var/lib/mongodb
con /var/lib/mongodb0
.
sudo rm -rf /var/lib/mongodb sudo mv /var/lib/mongodb0 /var/lib/mongodb sudo chown -R mongodb:mongodb /var/lib/mongodb
Reparar sin mantener los datos:
sudo rm /var/lib/mongodb/mongod.lock sudo mongod --dbpath /var/lib/mongodb --repair
Cuando este proceso se complete, los ficheros de datos reparados sustituirán a los originales en el directorio /var/lib/mongodb
.
Ref: http://docs.mongodb.org/manual/tutorial/recover-data-following-unexpected-shutdown/