Jak mogę odinstalować MongoDB i ponownie zainstalować najnowszą wersję?


49

Muszę całkowicie odinstalować mongodb z mojego systemu (Ubuntu 11.10) i zainstalować wersję 2.0.5.

Obecnie, kiedy uruchamiam:

mongo db

Otrzymuję następujący błąd:

Wersja powłoki MongoDB: 2.0.1
połączenie z: db
Środa 6 czerwca 13:05:03 Błąd: nie można połączyć się z serwerem 127.0.0.1 shell / mongo.js: 84 wyjątek: połączenie nie powiodło się


Odpowiedzi:


83

Istnieją dwa zestawy pakietów dla MongoDB ; standardowe pakiety Ubuntu i zestaw opublikowany przez same 10gen. Standardowe pakiety są nieaktualne, szczególnie w przypadku starszych wersji Ubuntu, więc prawdopodobnie dobrym pomysłem jest skonfigurowanie się do instalacji z repozytoriów 10gen.

Podany przez ciebie komunikat o błędzie sugeruje, że mogłeś już tego spróbować, ponieważ wersja 2.0.1 nie jest standardowym pakietem Ubuntu. Sugeruję, aby przede wszystkim całkowicie odinstalować Mongo i wyczyścić system. Jeśli masz istniejące dane, które chcesz zachować, możesz wykonać ich kopię zapasową. Domyślnie jest przechowywany w /var/lib/mongodb. Więc jeśli chcesz zrobić kopię zapasową, zabierz stamtąd pliki i przechowuj je w bezpiecznym miejscu.

Odinstalowywanie istniejących pakietów MongoDB

Ponieważ nie jestem w 100% tym, co zainstalowałeś, sugeruję, aby upewnić się, że wszystko zostało odinstalowane:

sudo apt-get purge mongodb mongodb-clients mongodb-server mongodb-dev
sudo apt-get purge mongodb-10gen
sudo apt-get autoremove

Niektóre z tych poleceń mogą się nie powieść, w zależności od tego, jakie pakiety faktycznie zainstalowałeś, ale to jest w porządku.

To powinno również usunąć twoją konfigurację /etc/mongodb.conf. Jeśli chcesz całkowicie wyczyścić, możesz również usunąć katalog danych /var/lib/mongodb, o ile utworzyłeś kopię zapasową lub już go nie chcesz.

Jeśli zainstalowałeś, budując ze źródła lub korzystając z binarnych dystrybucji 10gen, musisz ręcznie odinstalować i wyczyścić z każdego miejsca, w którym umieścisz pliki binarne, pliki konfiguracji i pliki danych.

Instalowanie pakietów 10gen MongoDB

Postępuj zgodnie z instrukcjami 10gen, aby dodać ich repozytorium:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10

Edytuj /etc/apt/sources.list, usuń wszystkie linie, które już dodałeś do Mongo, i dodaj następującą pojedynczą linię (ponieważ 11.10 używa upstart) na końcu:

deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen

Zauważ, że jeśli dodasz to repozytorium za pomocą Centrum oprogramowania, automatycznie doda ono wpis deb-src, co spowoduje uszkodzenie apt-get. Musisz więc ręcznie edytować listę źródeł, aby dodać tylko powyższą linię.

Następnie, aby zainstalować, uruchom:

sudo apt-get update 
sudo apt-get install mongodb-10gen

Sprawdzanie instalacji

Instalowanie pakietów powinno automatycznie uruchamiać serwer MongoDB. Powinieneś być w stanie uruchomić klienta z wiersza poleceń:

mongo

które powinny pomyślnie połączyć się z testową bazą danych. Możesz wyjść, pisząc exit.

Jeśli to się nie powiedzie, zaktualizuj swoje pytanie o dalsze szczegóły, w tym wynik próby nawiązania połączenia i dołączenia /var/log/mongodb/mongodb.logpliku.


maisapride1 @ maisapride1: / $ sudo apt-get purge mongodb mongodb-klient mongodb-server mongodb-dev Czytanie list pakietów ... Gotowe Drzewo zależności budynku Odczytywanie informacji o stanie ... Gotowe Pakiet mongodb nie jest zainstalowany, więc nie usunięty Pakiet mongodb- klienci nie są zainstalowani, więc nie usunięto Pakiet mongodb-dev nie został zainstalowany, więc nie usunięto Pakiet mongodb-server nie został zainstalowany, więc nie usunięto 0 uaktualnionych, 0 nowo zainstalowanych, 0 do usunięcia i 406 nie zaktualizowanych. ----- przy próbie usunięcia, gdy ponownie daję mongo, pokazując pęcherzyk: wersja powłoki MongoDB: 2.0.1
— jyothi

W porządku; jak powiedziałem, niektóre z tych poleceń mogą się nie powieść, w zależności od zainstalowanych pakietów. Te konkretne błędy pokazują, że nie masz zainstalowanych standardowych pakietów Ubuntu MongoDB.
— David Edwards,

Czy uruchomiłeś drugie polecenie, aby usunąć pakiety 10gen? Jeśli to również niczego nie usuwa, a nadal możesz uruchomić klienta mongo, musisz wykonać ręczną instalację i będziesz musiał ręcznie usunąć.
— David Edwards

czy mogę wiedzieć, jak zainstalować lub zaktualizować mongo db do 2.0.5 z 2.0.1
— jyothi

Zainstalowanie pakietów 10gen zgodnie z opisem w mojej odpowiedzi da ci 2.0.6. Poprzednie wersje są dostępne do pobrania i ręcznej instalacji ze strony MongoDB, ale zdecydowanie zalecamy trzymanie się wersji spakowanych.
— David Edwards,

27

Aby całkowicie usunąć MongoDB z systemu, musisz usunąć same aplikacje MongoDB, pliki konfiguracyjne i wszystkie katalogi zawierające dane i dzienniki. Poniższa sekcja przeprowadzi Cię przez niezbędne kroki.

  1. Zatrzymaj MongoDB

    Zatrzymaj proces mongod, wydając następujące polecenie:

    sudo service mongod stop
    
  2. Usuń pakiety

    Usuń wszystkie pakiety MongoDB, które wcześniej zainstalowałeś.

    sudo apt-get purge mongodb-org*
    
  3. Usuń katalogi danych.

    Usuń bazy danych MongoDB i pliki dziennika.

    sudo rm -r /var/log/mongodb /var/lib/mongodb
    

4

Wykonaj kroki:

  1. Usuń plik blokady

    sudo rm /var/lib/mongodb/mongod.lock
    
  2. Napraw mongodb

    mongod --repair
    
  3. Uruchom mongodb

    sudo service mongodb start
    
  4. Uruchom konsolę mongo

    mongo
    

@stumblebee: Uważaj na sugestie edycji takie jak ta! Nazwa usługi jest rzeczywiście taka mongodbjak w pierwotnej wersji i można to sprawdzić za pomocą listy plików pakietów .
— David Foerster
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.