GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> Panels

So installieren Sie MongoDB unter Ubuntu 18.04

In diesem Artikel zeigen wir Ihnen, wie Sie MongoDB installieren, seine Dienste verwalten und Remoteverbindungen auf einem Ubuntu 18.04-VPS zulassen.

MongoDB ist ein Open-Source-Datenbankverwaltungssystem, das zu einer Familie von NoSQL gehört. NoSQL unterscheidet sich von herkömmlichen tabellenbasierten SQL-Datenbanken (MySQL und PostgreSQL) – die Daten werden in flexiblen JSON-ähnlichen Dokumenten ohne vordefiniertes Schema gespeichert, wodurch große Änderungen an Datenbanken ohne Ausfallzeiten vorgenommen werden können. Beginnen wir mit der Installation.

Schritt 1:Verbinden Sie sich mit Ihrem Server

Bevor wir beginnen, müssen Sie sich als Root-Benutzer über SSH mit Ihrem Server verbinden. Verwenden Sie dazu den folgenden Befehl:

ssh root@IP_Address -p port_number

Sie müssen IP_Address und Port_number durch Ihre tatsächliche Server-IP-Adresse und SSH-Portnummer ersetzen. Wenn Sie keinen Zugriff auf das Root-Konto haben, können Sie stattdessen ein Konto mit sudo-Berechtigungen verwenden.

Stellen Sie nach der Anmeldung sicher, dass Ihr Server auf dem neuesten Stand ist, indem Sie die folgenden Befehle ausführen:

sudo apt update
sudo apt upgrade

Schritt 2:Installation von MongoDB

Die offiziellen Ubuntu-Softwarepaket-Repositorys werden mit Version 3.6.3 von MongoDB geliefert, aber in diesem Artikel werden wir MongoDB 4.0 installieren, die neueste verfügbare Version. Sie können jedoch jederzeit auf der offiziellen Website von MongoDB nachsehen, ob eine neue Version von MongoDB verfügbar ist.

Um die MongoDB 4.0 Community Edition auf Ubuntu zu installieren, müssen wir den vom Paketverwaltungssystem verwendeten öffentlichen Schlüssel importieren. Wir können das mit dem folgenden Befehl tun:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4

Da wir den Schlüssel jetzt importiert haben, können wir das MongoDB-Repository mit dieser nächsten Zeile hinzufügen:

sudo add-apt-repository 'deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'

Wir aktualisieren dann die Paketliste:

sudo apt update

An diesem Punkt ist das Repository aktiviert und die Paketliste wird aktualisiert – wir können nun mit der Installation des MongoDB CE-Pakets fortfahren, indem wir den folgenden Befehl eingeben:

sudo apt install mongodb-org

Die Pakete mongodb-org-server, mongodb-org-mongos, mongodb-org-shell und mongodb-org-tools werden auf Ihrem System als Teil des mongodb-org-Pakets installiert.

Auf dem Server ist nun die MongoDB 4.0 Community Edition installiert. Wir müssen dann den MongoDB-Dienst starten und ihm ermöglichen, beim Booten zu starten.

sudo systemctl start mongod
sudo systemctl enable mongod

Um die MongoDB-Installation zu überprüfen, können wir den Verbindungsstatus überprüfen, indem wir den folgenden Befehl eingeben:

mongo --eval 'db.runCommand({ connectionStatus: 1 })'

Sie sollten eine Ausgabe ähnlich dieser haben:

MongoDB shell version v4.0.6
connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("c806e0e1-ab30-4d41-b882-026c09d2893f") }
MongoDB server version: 4.0.6
{
"authInfo" : {
"authenticatedUsers" : [ ],
"authenticatedUserRoles" : [ ]
},
"ok" : 1
}

Herzlichen Glückwunsch, Sie haben MongoDB erfolgreich auf Ihrem Server installiert. Im nächsten Schritt geht es um die Konfiguration Ihres MongoDB-Servers.

Schritt 3:MongoDB konfigurieren

Wir können die MongoDB-Instanz konfigurieren, indem wir die mongod.conf ändern Datei, die sich in /etc/ befindet . Wir verwenden Nano, um die Datei zu bearbeiten, aber Sie können Ihren bevorzugten Texteditor verwenden, wenn Sie möchten.

sudo nano /etc/mongod.conf

Um Remote-Verbindungen zu ermöglichen und MongoDB besser zu sichern, werden wir einige Änderungen in der Konfigurationsdatei vornehmen. MongoDB lauscht standardmäßig nur auf Port 27017 auf localhost (IP 127.0.0.1) auf Verbindungen. Um eine MongoDB-Remoteverbindung zuzulassen, müssen Sie Ihre Server-IP-Adresse zur MongoDB-Konfigurationsdatei hinzufügen. Dies wird als Beispiel unten gezeigt:

bind_ip = 127.0.0.1, your_server_ip
#port = 27017

security:
authorization: enabled

Wir haben auch eine Autorisierungsoption integriert, die den Benutzerzugriff auf MongoDB-Datenbanken regelt. Wenn die Autorisierungsoption nicht aktiviert ist, hat jeder Benutzer Zugriff auf alle MongoDB-Datenbanken und kann jede Aktion ausführen, was ein Sicherheitsrisiko darstellt. Nachdem wir die Änderungen in der MongoDB-Konfigurationsdatei gespeichert haben, müssen wir den MongoDB-Dienst mit dem folgenden Befehl neu starten, damit die Änderungen wirksam werden:

sudo systemctl restart mongod

Schritt 4:Administrativen MongoDB-Benutzer erstellen

Da wir den MongoDB-Server konfiguriert und die Authentifizierungsoption aktiviert haben, müssen wir nun ein administratives MongoDB-Benutzerkonto erstellen, das zur Verwaltung der MongoDB-Instanz verwendet wird.

Um auf die Mongo-Shell zuzugreifen, geben Sie Folgendes ein:

mongo

Als Nächstes verwenden wir den folgenden Befehl, um eine Verbindung zur Admin-Datenbank herzustellen:

use admin

Ausgabe:

switched to db admin

Wir führen den folgenden Befehl aus, um einen neuen administrativen Benutzer namens mongo_admin mit der Rolle userAdminAnyDatabase zu erstellen:

db.createUser(
{
user: "mongo_admin", 
pwd: "Strong_Pas$w0rd", 
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)

Und wir erhalten dies als Ausgabe:

Successfully added user: {
"user" : "mongo_admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}

Vergessen Sie nicht, „Strong_Pas$w0rd“ durch ein wirklich starkes Passwort zu ersetzen. Wir können jetzt die Mongo-Shell verlassen:

quit()

Schritt 5:Zugriff des Administrators überprüfen

Um die Änderungen zu bestätigen, greifen wir mit dem von uns erstellten Benutzer mongo_admin auf die Mongo-Shell zu:

mongo -u mongo_admin -p --authenticationDatabase admin

use admin

show users

Und wenn Sie bis jetzt alle Schritte befolgt haben, sollten Sie die folgende Ausgabe haben:

Ausgabe:

> use admin
switched to db admin
> show users
{
"_id" : "admin.mongo_admin",
"user" : "mongo_admin",
"db" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
],
"mechanisms" : [
"SCRAM-SHA-1",
"SCRAM-SHA-256"
]
}

Sie können auch versuchen, die Benutzer aufzulisten, wenn Sie auf die Mongo-Shell zugreifen (ohne Argumente), und dieselben Befehle wie zuvor verwenden.

Schritt 6:MongoDB-Remotezugriff in der Firewall zulassen

In diesem Schritt gewähren wir Fernzugriff auf unsere MongoDB, indem wir sie in unserer Firewall zulassen. Wenn Sie auf Ihrem Server keine Firewall verwenden, können Sie diesen Schritt überspringen. Der Standardport von MongoDB ist 27017, daher zeigen wir Ihnen in unseren Beispielen, wie Sie diesen Port durch Ihre Firewall zulassen.

Wenn Sie die UFW (Uncomplicated Firewall) verwenden, können Sie die folgenden Tipps verwenden, um MongoDB den Fernzugriff zu ermöglichen.

Um den Zugriff auf MongoDB auf seinem Standardport (27017) von überall aus zuzulassen, können Sie den folgenden Befehl verwenden:

sudo ufw allow 27017

Um den Zugriff auf MongoDB auf seinem Standardport 27017 nur von einer bestimmten IP-Adresse aus zuzulassen, können Sie den folgenden Befehl verwenden:

sudo ufw allow from allowed_IP_address/32 to any port 27017

Sie müssen die zulässige_IP-Adresse durch die tatsächliche IP-Adresse ersetzen, die Sie verwenden möchten.

Sie können die Änderung der Firewall-Einstellungen bestätigen mit:

sudo ufw status

Ausgabe:

Status: active

To                         Action      From
--                         ------      ----
27017                      ALLOW       Anywhere
OpenSSH                    ALLOW       Anywhere
27017 (v6)                 ALLOW       Anywhere (v6)
OpenSSH (v6)               ALLOW       Anywhere (v6)

Schritt 7:Mit MongoDB verbinden

Nachdem wir MongoDB installiert und konfiguriert haben, müssen wir einige verschiedene Möglichkeiten erwähnen, wie Sie eine Verbindung herstellen können. Wir müssen sicherstellen, dass unsere MongoDB-Konfiguration funktioniert, bevor wir versuchen, auf die Mongo-Shell zuzugreifen.

Lokale MongoDB-Instanz auf Standardport

Die einfachste Verbindung zur Mongo-Shell besteht darin, einfach den Mongo-Befehl ohne Argumente auszuführen:

mongo

Lokale MongoDB-Instanz auf einem nicht standardmäßigen Port

Wenn wir uns an einem bestimmten Port mit der Mongo-Shell verbinden möchten, können wir Folgendes verwenden:

mongo --port port_number

Ersetzen Sie einfach die port_number durch Ihre tatsächliche Portnummer.

MongoDB-Instanz auf einem Remote-Host

Wenn wir mit der MongoDB-Instanz eine Verbindung zu einem Remote-Host-Computer herstellen müssen, können wir die folgenden Methoden verwenden:

Wir können eine Verbindungszeichenfolge angeben.

mongo mongodb://your_domain_name.com:port_number

Wir können die Befehlszeilenoption –host :

verwenden
mongo --host your_domain_name.com:port_number

oder wir können –host und –port

verwenden
mongo --host your_domain_name.com --port port_number

MongoDB-Instanz mit Authentifizierung

Anhand dieser Beispiele zeigen wir Ihnen, wie Sie eine Verbindung zu einer MongoDB-Instanz herstellen, die eine Authentifizierung erfordert.

Wir können den Benutzernamen, die Authentifizierungsdatenbank und die Portnummer in unserer Verbindungszeichenfolge definieren. Außerdem können wir das Passwort (das optional ist) in unserer Verbindungszeichenfolge definieren. Wenn das Passwort nicht in unserer Verbindungszeichenfolge definiert ist, fragt die Shell nach dem Passwort.

mongo --host mongodb://user@your_domain_name.com:port_number/?authSource=admin

Wir können die Befehlszeilenoptionen –username , –password und –authenticationDatabase verwenden.

mongo --username user --password --authenticationDatabase admin --host your_domain_name.com --port port_number

Mit einem MongoDB-Replikatsatz verbinden

Wir können den Replikatsatznamen und die Mitglieder in der Verbindungszeichenfolge angeben.

mongo mongodb://your_domain_name.com.local:port_number,mongodb1.your_domain_name.com.local:port_number,mongodb2.your_domain_name.com.local:port_number/?replicaSet=replA

Wenn Sie das DNS-Seedlist-Verbindungsformat verwenden, können Sie die Verbindungszeichenfolge angeben:

mongo "mongodb+srv://server.your_domain_name.com/"

Wir können den Namen und die Mitglieder des Replikatsatzes aus –host /:,:,… angeben. In diesem Beispiel wird eine Verbindung zu einem Replikatsatz namens replA:

mongo --host replA/your_domain_name.com.local:port_number,mongodb1.your_domain_name.com.local:port_number,mongodb2.your_domain_name.com.local:port_number

TLS/SSL-Verbindung

Wir können die Option ssl=true in der Verbindungszeichenfolge angeben.

mongo mongodb://your_domain_name.com.local:port_number,mongodb1.your_domain_name.com.local:port_number,mongodb2.your_domain_name.com.local:port_number/?replicaSet=replA&ssl=true

oder wir können –ssl in der Befehlszeile angeben und das vorherige Beispiel verwenden, um eine Verbindung zum Replikatsatz namens replA herzustellen:

mongo --ssl --host replA/your_domain_name.com.local:port_number,mongodb1.your_domain_name.com.local:port_number,mongodb2.your_domain_name.com.local:port_number

Wenn Sie die obigen Befehle verwenden möchten, vergessen Sie nicht, die Werte wie your_domain_name.com, host_name, user und replA in den Befehlen durch die tatsächlichen Werte zu ersetzen.

Schritt 8:MongoDB deinstallieren

Wenn Ihnen MongoDB aus irgendeinem Grund nicht gefällt und Sie es von Ihrem System entfernen müssen, können Sie diesen Befehlen folgen:

sudo service mongod stop
sudo apt purge mongodb-org*
sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongodb

In diesem Artikel haben wir Ihnen gezeigt, wie Sie MongoDB installieren, die Firewall anpassen, einen Administratorbenutzer erstellen, den Fernzugriff aktivieren, eine Verbindung zu MongoDB herstellen und wie Sie MongoDB deinstallieren und entfernen. Jetzt können Sie dieses Wissen nutzen und mit der Erstellung Ihrer Projekte in dieser wunderbaren Anwendung beginnen.

Wenn Sie einer unserer Ubuntu-Hosting-Kunden sind oder einen unserer Managed MongoDB-Hosting-Pläne haben, müssen Sie MongoDB natürlich nicht auf Ihrem Ubuntu 18.04 VPS installieren – fragen Sie einfach unsere Administratoren, lehnen Sie sich zurück und entspannen Sie sich. Unsere Administratoren installieren MongoDB auf Ubuntu 18.04 umgehend für Sie.

PS . Wenn Ihnen dieser Beitrag über die Installation von MongoDB auf einem VPS mit Ubuntu 18.04 gefallen hat , teilen Sie es bitte mit Ihren Freunden in den sozialen Netzwerken über die Schaltflächen unten oder hinterlassen Sie einfach einen Kommentar im Kommentarbereich. Danke.

Neue Version hier verfügbar:How to Install MongoDB on Ubuntu 20.04 and CentOS 8.


Panels
  1. So installieren Sie R unter Ubuntu 16.04

  2. So installieren Sie MongoDB unter Ubuntu 16.04

  3. So installieren Sie MongoDB unter Ubuntu 18.04

  4. So installieren Sie Go unter Ubuntu 18.04

  5. So installieren Sie MongoDB auf Ubuntu 18.04

So installieren Sie MongoDB Compass in Ubuntu 20.04

So installieren Sie MongoDB auf Ubuntu

So installieren Sie MongoDB unter Ubuntu 14.04

So installieren Sie MongoDB unter Ubuntu 15.04

So installieren Sie MongoDB unter Ubuntu 16.04

So installieren Sie MongoDB unter Ubuntu 22.04