Il file di registro ti dice che hai un "vecchio file di blocco" . MongoDB conserva un file di blocco mentre è in esecuzione. Crea questo file all'avvio e lo elimina quando viene interrotto. Quando il computer si arresta in modo anomalo (o MongoDB si arresta in modo anomalo, ad esempio tramite kill
), questo file non viene eliminato e quindi il database non viene avviato. L'esistenza di questo file indica l'arresto non corretto di MongoDB.
Si possono fare due cose:
-
Se questa è una macchina di sviluppo e non hai utilizzato il tuo database (e nemmeno i tuoi programmi), puoi rimuovere il file manualmente. Per MongoDB 2.2.2 in esecuzione su Ubuntu 12.10, è in
/var/lib/mongodb/mongod.lock
. Per altre versioni, il file potrebbe trovarsi in un percorso diverso o potrebbe essere denominatomongo.lock
. -
Il percorso più sicuro è seguire la guida alla durabilità e alla riparazione di MongoDB. In sintesi, per una macchina con la configurazione precedente, dovresti eseguire i seguenti comandi:
sudo -u mongodb mongod --repair --dbpath /var/lib/mongodb/ sudo service mongod start