2011-10-17 14 views
9

Mój serwer przeszedł awarię elektryczną i przez kilka przerażających sekund myślałem, że straciłem wszystkie dane MongoDB. Wtedy zdałem sobie sprawę, że po zrestartowaniu serwera mongo automatycznie zrestartowało się bez opcji --dbpath.Zmiana ścieżki MongoDB?

Czego nie mogę zrozumieć, to dlaczego, mimo że mój plik mongodb.conf ma ścieżkę dbpath do/var/lib/mongodb, mongo szukało plików db w/data/db podczas uruchamiania. Czy ktoś może rzucić trochę światła na to?

Dzięki!

+0

Z jakiego systemu operacyjnego korzystasz? – UpTheCreek

+0

Ubuntu 11.10 na tym serwerze –

Odpowiedz

9

/data/db to domyślna ścieżka, w której mongod będzie szukać plików z danymi, jeśli zostanie uruchomiona bez żadnych opcji. Czy Twój skrypt startowy nakazuje mongod załadować poprawny plik konfiguracyjny? Jeśli nie, to wyjaśniałoby to zachowanie.

+0

To jest rozwiązanie, które skończyło się kilka tygodni temu. Przepraszamy za nieaktualizowanie wątku wcześniej - i dzięki za wkład =) –

2

Powinieneś koniecznie upewnić się, że twój skrypt init dla Mongo zawiera pełną ścieżkę do katalogu danych. Oto fragment tego, co używamy w naszym wdrożeniu produkcyjnym:

ulimit -s unlimited 

MONGO_USER=mongo 
MONGO_HOME=/opt/mongo 
MONGO_DATA=/san2/data 
MONGO_LOGS=/home/mongo/logs 


start() { 
    su $MONGO_USER -c "$MONGO_HOME/bin/mongod --master --fork --logpath $MONGO_LOGS/mongodb.log --logappend --dbpath $MONGO_DATA --maxConns 2400" 
} 
3

Kiedy ostatnio aktualizowałeś Mongod w swoim systemie? i jak to zaktualizowałeś?

W zależności od tego, jak zainstalowałeś/zaktualizowałeś Mongod, może się zdarzyć, że skrypt /etc/init.d/mongo lub pliki /etc/mongo.conf zostaną nadpisane.

Albo ktoś edytował te pliki dawno temu, i to jest po raz pierwszy Mongo ponownie uruchomiony, a teraz wygląda na to, że nagle nastąpiła zmiana.

Nie widziałem żadnej z tych dwóch rzeczy zdarzyć się w długim czasie (ale jeśli używasz Gentoo, prawdopodobnie tak się stało)

Co OS używasz?

To dobry pomysł, aby zachować kopie zapasowe tych plików ...

1

Sprawdź opcje startowe w /etc/default/mongodb najprawdopodobniej te zostaną ustawione na ścieżce domyślnej /data/db zamiast jednego wybranego kiedy zaczął go ręcznie.

Powiązane problemy