Leider steckt das offizielle Ubuntu-Paket für MongoDB immer noch auf 2.6, was zu diesem Zeitpunkt uralt ist ( dieser Fehler wurde nicht für lebhaft, listig oder xenial aufgegriffen).
MongoDB hat noch kein Paket für 16.04 (Xenial) veröffentlicht. Wie kann ich also die 14.04 (Trusty) -Pakete verwenden, um MongoDB 3.2+ am 16.04 zu installieren?
Antworten:
Es ist ein bisschen wie ein Hack, aber ja, das kann man machen. Es ist ein undokumentierter Schritt erforderlich, um den Dienst tatsächlich zu starten, und (seltsamerweise) müssen Sie das Ubuntu-
mongodb
Paket zuerst installieren und dann entfernen, damit Sie einen verwendbaren Dienst haben, es sei denn, Sie möchten die Konvertierung von Upstart-Jobs manuell durchführen . Eine direkte Installation der MongoDB-Pakete bietet Ihnen keinen funktionierenden Service für einen neuen 16.04.Update - Juli 2016: Der offizielle Fix für dieses Problem (Hinzufügen von Unterstützung für 16.04 zu den Paketen) wurde im 3.3 -Entwicklungszweig als Teil von SERVER-23043 abgeschlossen - und als Backport in der 3.2-Serie als Teil von 3.2 veröffentlicht. 7 . Wenn Sie 3.2.7+ verwenden, müssen Sie dies nicht tun, und die offizielle Installation des MongoDB-Pakets sollte einfach funktionieren.
Befolgen Sie in jedem Fall nach dem Hinzufügen / Entfernen die üblichen Anweisungen für 14.04, die hier zusammengefasst sind:
Die Installation ist erfolgreich, und dank des Ubuntu-Pakets verfügen wir über alle für einen Dienst erforderlichen Komponenten. Der Versuch, den Dienst zu starten, schlägt jedoch zunächst fehl:
Dies zu beheben ist nicht allzu schwer:
Jetzt können wir den Dienst aktivieren / starten, seinen Status abrufen usw.
Erfolg - und wir erhalten einen schönen Zeiger auf die aktive Konfigurationsdatei (die im alten
key=value
Format vorliegt, siehe hier für Beispiele im neueren empfohlenen YAML-Format).Hinweis: Es gibt tatsächlich zwei Konfigurationsdateien
/etc/mongod.conf
und/etc/mongodb.conf
dank geringfügiger Unterschiede zwischen den beiden von uns installierten Paketen. Der jetzt aktive Dienst verweist standardmäßig auf das alte Format./etc/mongodb.conf
Sie können wechseln, indem Sie das auf verschieben / kopierenmongod.conf
,mongodb.conf
wenn Sie dies wünschen, oder die Datei einfach direkt bearbeiten.Stellen Sie nach dem Start zum Testen eine Verbindung zur Datenbank mit der
mongo
Shell her:Wenn Sie die THP-Warnungen entfernen möchten, lesen Sie diese Antwort .
quelle
sudo service mongodb start
kehrtFailed to start mongodb.service: Unit mongodb.service not found
.sudo service mongodb start
Gibt nichts zurück.sudo service mongodb status
gibt eine fehlgeschlagene Nachricht mit zurückstatus=2
. Um dies zu beheben, habe ich den Pfad in der neu erstellten Servicedatei von/etc/mongodb.conf
nach geändert/etc/mongod.conf
. Wie bringen Sie Mongodb auf der Grundlage Ihrer ursprünglichen Antwort dazu, beim Systemstart zu starten?sudo systemctl enable mongodb
. Siehe: digitalocean.com/community/tutorials/…Wenn Sie es bereits installiert haben, entfernen Sie mongodb durch:
Versuchen Sie es mit einer Empfehlung zu digitalocean https://www.digitalocean.com/community/tutorials/how-to-install-mongodb-on-ubuntu-16-04
quelle