MongoDB auf Ubuntu 24.04 installieren und absichern
MongoDB ist eine Open-Source-NoSQL-Datenbank, die Daten in flexiblen, JSON-ähnlichen Dokumenten speichert. Sie unterstützt dynamische Datenstrukturen, Ad-hoc-Abfragen, Indizierung und Echtzeit-Aggregationen für eine effiziente Datenanalyse. Im Gegensatz zu traditionellen relationalen Datenbanken, die feste Schemata und Tabellen verwenden, ist MongoDB hoch skalierbar und eignet sich besonders für unstrukturierte oder halbstrukturierte Daten.
In dieser Anleitung erfährst du, wie du MongoDB auf Ubuntu 24.04 installierst, den Datenbankdienst konfigurierst, ihn absicherst und grundlegende CRUD-Operationen (Create, Read, Update, Delete) durchführst.
Voraussetzungen
Bevor du MongoDB installierst, benötigst du Folgendes:
- Einen Ubuntu 24.04-Server mit einem Benutzerkonto mit sudo-Rechten.
- Grundkenntnisse in der Linux-Befehlszeile.
Schritt 1: MongoDB installieren
MongoDB ist nicht in den Standard-Paketquellen von Ubuntu 24.04 enthalten. Daher musst du zuerst das offizielle MongoDB-Repository hinzufügen.
1.1 MongoDB GPG-Schlüssel importieren
Führe den folgenden Befehl aus, um den MongoDB GPG-Schlüssel zu importieren:
$ curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc | sudo gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg --dearmor
1.2 MongoDB-Repository hinzufügen
Füge die offizielle MongoDB-Quelle zu deinen APT-Repositories hinzu:
$ echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/ubuntu noble/mongodb-org/8.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list
1.3 Paketliste aktualisieren und MongoDB installieren
Aktualisiere die Paketliste und installiere MongoDB mit folgendem Befehl:
$ sudo apt update
$ sudo apt install -y mongodb-org
1.4 Überprüfung der MongoDB-Installation
Überprüfen Sie die installierte MongoDB-Version, um die Installation zu bestätigen:
$ mongod --version
Schritt 2: MongoDB-Dienst verwalten
MongoDB läuft als Systemdienst unter dem Namen mongod
. Damit der Dienst automatisch gestartet wird, aktiviere ihn mit folgendem Befehl:
2.1 MongoDB automatisch starten lassen
$ sudo systemctl enable mongod
2.2 MongoDB starten
$ sudo systemctl start mongod
2.3 MongoDB-Status überprüfen
$ sudo systemctl status mongod
Schritt 3: MongoDB absichern
Standardmäßig erlaubt MongoDB den Zugriff ohne Authentifizierung. Um unbefugte Zugriffe zu verhindern, solltest du eine Authentifizierung einrichten.
3.1 MongoDB-Shell aufrufen
$ mongosh
3.2 Admin-Benutzer erstellen
Wechsle zur admin
-Datenbank und erstelle einen Benutzer mit Administratorrechten:
> use admin
> db.createUser({
user: "adminuser",
pwd: passwordPrompt(),
roles: [
{ role: "userAdminAnyDatabase", db: "admin" },
{ role: "readWriteAnyDatabase", db: "admin" },
{ role: "dbAdminAnyDatabase", db: "admin" }
]
})
3.3 Überprüfung der Existenz des mongodbadmin-Benutzers in MongoDB
Rufen Sie die Liste aller MongoDB-Benutzer ab und stellen Sie sicher, dass der Benutzer mongodbadmin
vorhanden ist, indem Sie den folgenden Befehl ausführen:
db.getUsers()
Die Ausgabe sollte dem folgenden Beispiel ähneln:
{
"users": [
{
"_id": "admin.mongodbadmin",
"userId": "UUID('288c02ec-d4a2-4631-b896-6ce6a537529a')",
"user": "mongodbadmin",
"db": "admin",
"roles": [
{ "role": "dbAdminAnyDatabase", "db": "admin" },
{ "role": "userAdminAnyDatabase", "db": "admin" },
{ "role": "readWriteAnyDatabase", "db": "admin" }
],
"mechanisms": [ "SCRAM-SHA-1", "SCRAM-SHA-256" ]
}
],
"ok": 1
}
Nachdem Sie sich vergewissert haben, dass der Benutzer mongodbadmin
vorhanden ist, verlassen Sie die MongoDB-Shell mit:
exit
3.4 Authentifizierung aktivieren
Öffne die MongoDB-Konfigurationsdatei und aktiviere die Benutzer-Authentifizierung:
$ sudo nano /etc/mongod.conf
Füge diese Zeilen in die Datei ein:
security:
authorization: enabled
Schritt 4: Datenbankoperationen in MongoDB durchführen
Nachdem MongoDB installiert und abgesichert wurde, kannst du grundlegende Datenbankoperationen durchführen.
4.1 Verbindung zur MongoDB-Datenbank
Verwenden Sie den folgenden Befehl, um sich mit dem neu erstellten Admin-Benutzer anzumelden:
$ mongosh -u mongodbadmin -p --authenticationDatabase admin
Geben Sie das Passwort ein, wenn Sie dazu aufgefordert werden.
Wechseln Sie anschließend zu einer neuen Datenbank mit dem Namen example_db
:
> use example_db
4.2 Neuen Datenbankbenutzer erstellen
Erstellen Sie einen neuen Benutzer mit Lese- und Schreibrechten für die Datenbank example_db
:
> db.createUser({
user: "example_user",
pwd: passwordPrompt(),
roles: [{ role: "readWrite", db: "example_db" }]
})
Geben Sie ein sicheres Passwort ein, wenn Sie dazu aufgefordert werden.
4.3 Daten in eine Sammlung einfügen
Erstellen Sie eine neue Sammlung namens messages
und fügen Sie ein Dokument hinzu:
> db.messages.insertOne({ message: "Hello, MongoDB!" })
4.4 Daten abrufen
Zeigen Sie das eingefügte Dokument an:
> db.messages.find()
4.5 Daten aktualisieren
Ändern Sie ein vorhandenes Dokument, indem Sie die Nachricht aktualisieren:
> db.messages.updateOne(
{ message: "Hello, MongoDB!" },
{ $set: { message: "Welcome to MongoDB!" } }
)
4.6 Daten löschen
Entfernen Sie ein Dokument aus der Sammlung:
> db.messages.deleteOne({ message: "Welcome to MongoDB!" })
Schritt 5: Backup und Wiederherstellung von MongoDB-Daten
5.1 Erstellen eines Datenbank-Backups
Um eine vollständige Sicherung der MongoDB-Datenbank zu erstellen, verwenden Sie den Befehl mongodump
:
$ mongodump --db example_db --out ~/mongodb_backup
5.2 Wiederherstellung eines Datenbank-Backups
Um Daten aus einem Backup wiederherzustellen, verwenden Sie den Befehl mongorestore
:
$ mongorestore --db example_db ~/mongodb_backup/example_db
Schritt 6: Deinstallation von MongoDB
Falls Sie MongoDB von Ihrem System entfernen müssen, folgen Sie diesen Schritten.
6.1 MongoDB-Dienst stoppen
$ sudo systemctl stop mongod
6.2 MongoDB-Pakete entfernen
Deinstallieren Sie MongoDB mit folgendem Befehl:
$ sudo apt purge -y mongodb-org*
6.3 MongoDB-Daten löschen
Um MongoDB vollständig zu entfernen, löschen Sie die folgenden Datenverzeichnisse:
$ sudo rm -r /var/lib/mongodb
$ sudo rm -r /etc/mongod.conf
Fazit
In dieser Anleitung haben Sie MongoDB auf Ubuntu 24.04 installiert, es mit Authentifizierung gesichert und grundlegende Datenbankoperationen durchgeführt. Außerdem haben Sie gelernt, wie Sie Backups erstellen, wiederherstellen und MongoDB deinstallieren können. Für weitere Details konsultieren Sie die offizielle MongoDB-Dokumentation.