Plik dziennika informuje, że masz "stary plik blokady" . MongoDB przechowuje plik blokady podczas działania. Tworzy ten plik, gdy jest uruchamiany i usuwa go, gdy jest zatrzymany. Gdy komputer ulegnie awarii (lub MongoDB ulegnie awarii, np. przez kill
), ten plik nie jest usuwany, a zatem baza danych nie uruchamia się. Istnienie tego pliku wskazuje na nieczyste zamknięcie MongoDB.
Można zrobić dwie rzeczy:
-
Jeśli jest to maszyna programistyczna i nie korzystasz z bazy danych (i nie używasz swoich programów), możesz usunąć plik ręcznie. W przypadku MongoDB 2.2.2 działającego w systemie Ubuntu 12.10 znajduje się on w
/var/lib/mongodb/mongod.lock
. W przypadku innych wersji plik może znajdować się w innej ścieżce lub może mieć nazwęmongo.lock
. -
Bezpieczniejszą drogą jest postępowanie zgodnie z przewodnikiem dotyczącym trwałości i naprawy MongoDB. Podsumowując, dla maszyny z powyższą konfiguracją powinieneś wykonać następujące polecenia:
sudo -u mongodb mongod --repair --dbpath /var/lib/mongodb/ sudo service mongod start