Wie kann ich MongoDB deinstallieren und die neueste Version neu installieren?

49

Ich muss mongodb vollständig von meinem System (Ubuntu 11.10) deinstallieren und Version 2.0.5 installieren.

Derzeit, wenn ich laufe:

mongo db

Ich erhalte folgenden Fehler:

MongoDB-Shell-Version: 2.0.1
Verbindung zu: db
Mi Jun 6 13:05:03 Fehler: Verbindung zu Server 127.0.0.1 konnte nicht hergestellt werden shell / mongo.js: 84 Ausnahme: Verbindung fehlgeschlagen

jyothi
quelle

Antworten:

83

Es gibt zwei Sätze von Paketen für MongoDB ; die Standard-Ubuntu-Pakete und ein von 10gen selbst veröffentlichtes Set. Die Standardpakete sind veraltet, insbesondere für ältere Versionen von Ubuntu. Daher ist es wahrscheinlich eine gute Idee, sich für die Installation aus den 10gen-Repositorys einzurichten.

Die Fehlermeldung, die Sie zitieren, deutet darauf hin, dass Sie dies möglicherweise bereits versucht haben, da Version 2.0.1 kein Ubuntu-Standardpaket ist. Ich schlage vor, dass Sie zuerst Mongo vollständig deinstallieren und Ihr System bereinigen. Wenn Sie über vorhandene Daten verfügen, die Sie behalten möchten, können Sie eine Sicherungskopie davon erstellen. Standardmäßig ist es in gespeichert /var/lib/mongodb. Wenn Sie also eine Sicherungskopie erstellen möchten, nehmen Sie von dort eine Kopie der Dateien und bewahren Sie diese an einem sicheren Ort auf.

Deinstallation bestehender MongoDB-Pakete

Da ich nicht 100% dessen bin, was Sie installiert haben, schlage ich Folgendes vor, um sicherzustellen, dass alles deinstalliert ist:

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

Einige dieser Befehle schlagen möglicherweise fehl, je nachdem, welche Pakete Sie tatsächlich installiert haben, aber das ist in Ordnung.

Dies sollte auch Ihre Konfiguration von entfernen /etc/mongodb.conf. Wenn Sie vollständig bereinigen möchten, möchten Sie möglicherweise auch das Datenverzeichnis entfernen /var/lib/mongodb, solange Sie es gesichert haben oder nicht mehr möchten.

Wenn Sie die Installation von der Quelle erstellt oder die 10gen-Binärdistributionen verwendet haben, müssen Sie die Binärdateien, Konfigurations- und Datendateien manuell deinstallieren und von jedem Ort aus bereinigen.

Installieren der 10gen MongoDB-Pakete

Befolgen Sie die Anweisungen von 10gen , um ihr Repository hinzuzufügen:

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

Bearbeiten /etc/apt/sources.list, löschen Sie alle Zeilen, die Sie bereits für Mongo hinzugefügt haben, und fügen Sie am Ende die folgende einzelne Zeile hinzu (seit 11.10 wird Upstart verwendet):

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

Beachten Sie, dass, wenn Sie dieses Repository über das Software Center hinzufügen, automatisch ein deb-src-Eintrag hinzugefügt wird, wodurch apt-get unterbrochen wird. Sie müssen Ihre Quellenliste also manuell bearbeiten, um nur die obige Zeile hinzuzufügen.

Führen Sie dann zum Installieren Folgendes aus:

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

Überprüfen Sie Ihre Installation

Bei der Installation der Pakete sollte der MongoDB-Server automatisch gestartet werden. Sie sollten also in der Lage sein, den Client über die Befehlszeile auszuführen:

mongo

Die Verbindung zur Testdatenbank sollte erfolgreich hergestellt werden. Sie können das Programm durch Eingabe beenden exit.

Wenn dies fehlschlägt, aktualisieren Sie Ihre Frage mit weiteren Details, einschließlich der Ausgabe des Versuchs, eine Verbindung herzustellen und Ihre /var/log/mongodb/mongodb.logDatei anzuhängen .

David Edwards
quelle
maisapride1 @ maisapride1: / $ sudo apt-get bereinigen mongodb mongodb-clients mongodb-server mongodb-dev Paketlisten lesen ... Fertig Abhängigkeitsbaum erstellen Statusinformationen lesen ... Fertig Paket mongodb ist nicht installiert, also nicht entfernt Paket mongodb- clients ist nicht installiert, also nicht entfernt Package mongodb-dev ist nicht installiert, also nicht entfernt Package mongodb-server ist nicht installiert, also nicht entfernt 0 aktualisiert, 0 neu installiert, 0 zu entfernen und 406 nicht aktualisiert. ----- Beim Versuch zu entfernen, wenn ich wieder Mongo es zeigt die Version: MongoDB Shell-Version: 2.0.1
Jyothi
Das ist gut; Wie gesagt, einige dieser Befehle können fehlschlagen, je nachdem, welche Pakete Sie installiert haben. Diese besonderen Fehler zeigen, dass Sie die Ubuntu MongoDB-Standardpakete nicht installiert hatten.
David Edwards
Haben Sie den zweiten Befehl ausgeführt, um die 10gen-Pakete zu entfernen? Wenn dadurch auch nichts entfernt wird und Sie den Mongo-Client weiterhin ausführen können, müssen Sie eine manuelle Installation durchgeführt und manuell löschen.
David Edwards
kann ich wissen, wie man mongo db von 2.0.1 auf 2.0.5 aktualisiert
jyothi
Wenn Sie die 10gen-Pakete wie in meiner Antwort beschrieben installieren, erhalten Sie 2.0.6. Frühere Versionen können von der MongoDB-Website heruntergeladen und manuell installiert werden. Ich empfehle jedoch dringend, die Paketversionen beizubehalten.
David Edwards
27

Um MongoDB vollständig von einem System zu entfernen, müssen Sie die MongoDB-Anwendungen selbst, die Konfigurationsdateien und alle Verzeichnisse mit Daten und Protokollen entfernen. Der folgende Abschnitt führt Sie durch die erforderlichen Schritte.

  1. Stoppen Sie MongoDB

    Stoppen Sie den Mongod-Prozess, indem Sie den folgenden Befehl eingeben:

    sudo service mongod stop
    
  2. Pakete entfernen

    Entfernen Sie alle zuvor installierten MongoDB-Pakete.

    sudo apt-get purge mongodb-org*
    
  3. Datenverzeichnisse entfernen.

    Entfernen Sie MongoDB-Datenbanken und -Protokolldateien.

    sudo rm -r /var/log/mongodb /var/lib/mongodb
    
Bhavesh
quelle
4

Folge den Schritten:

  1. Sperrdatei entfernen

    sudo rm /var/lib/mongodb/mongod.lock
    
  2. Reparieren Sie Mongodb

    mongod --repair
    
  3. Starte mongodb

    sudo service mongodb start
    
  4. Starten Sie die Mongo-Konsole

    mongo
    
user2123184
quelle
@ stumblebee: Bitte achten Sie auf Bearbeitungsvorschläge wie diesen! Der Dienstname ist mongodbin der Tat wie in der Originalversion und Sie können dies über die Paketdateiliste überprüfen .
David Foerster