Manager, Developer Education
Eine frühere Version dieses Tutorials wurde von Brian Boucheron geschrieben
MariaDB ist ein Open-Source-basiertes relationales Datenbank-Managementsystem, das häufig als Alternative für den MySQL-Datenbankteil des beliebten LAMP-Stacks (Linux, Apache, MySQL, PHP/Python/Perl) verwendet wird. Es ist als Drop-in-Ersatz für MySQL gedacht.
Dieses Quickstart-Tutorial beschreibt, wie Sie MariaDB auf einem Ubuntu 20.04-Server installieren und es mit einer sicheren Erstkonfiguration einrichten. Es behandelt außerdem, wie Sie ein zusätzliches Administratorkonto für den Passwortzugriff einrichten.
Um diesem Tutorial folgen zu können, benötigen Sie einen Server, auf dem Ubuntu 20.04 ausgeführt wird. Dieser Server sollte über einen administrativen non-root user und eine mit UFW konfigurierte Firewall verfügen. Sie können dies einrichten, indem Sie unserem Leitfaden zur Ersteinrichtung des Servers für Ubuntu 20.04 folgen.
Bevor Sie MariaDB installieren, aktualisieren Sie mit
apt den Paketindex auf Ihrem Server:
- sudo apt update
Installieren Sie anschließend das Paket:
- sudo apt install mariadb-server
Bei Installation aus den Standard-Repositorys startet die Ausführung von MariaDB automatisch. Um dies zu testen, überprüfen Sie seinen Status.
- sudo systemctl status mariadb
Sie erhalten eine Ausgabe, die der folgenden ähnelt:
Output● mariadb.service - MariaDB 10.3.22 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2020-05-12 13:38:18 UTC; 3min 55s ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
Main PID: 25914 (mysqld)
Status: "Taking your SQL requests now..."
Tasks: 31 (limit: 2345)
Memory: 65.6M
CGroup: /system.slice/mariadb.service
└─25914 /usr/sbin/mysqld
. . .
Wenn MariaDB nicht ausgeführt wird, können Sie das System mit dem Befehl sudo systemctl start mariadb
starten.
Führen Sie das Sicherheitsskript aus, das mit MariaDB installiert wurde. Dieses Skript führt Sie durch eine Reihe von Aufforderungen, in denen Sie verschiedene Änderungen an den Sicherheitseinstellungen Ihrer MySQL-Installation vornehmen können:
- sudo mysql_secure_installation
Bei der ersten Eingabeaufforderung werden Sie gebeten, das aktuelle Datenbank-root-Passwort einzugeben. Da wir noch kein Passwort eingerichtet haben, drücken Sie ENTER
, um „none“ (keines) anzugeben.
Output. . .
Enter current password for root (enter for none):
Bei der nächsten Eingabeaufforderung werden Sie gefragt, ob Sie ein Datenbank-root-Passwort einrichten möchten. Bei Ubuntu ist das root-Konto für MariaDB eng mit der automatisierten Systemwartung verbunden. Daher sollten wir die für dieses Konto konfigurierten Authentifizierungsmethoden nicht ändern. Geben Sie N
ein und drücken Sie dann ENTER
.
Output. . .
Set root password? [Y/n] N
Danach können Sie Y
und dann ENTER
drücken, um die Standardeinstellungen für alle nachfolgenden Fragen zu akzeptieren. Damit werden einige anonyme Benutzer und die Testdatenbank entfernt, Remote-root-Logins deaktiviert und dann diese neuen Regeln geladen.
Bei Ubuntu mit MariaDB 10.3 ist der root-MariaDB-Benutzer standardmäßig so eingerichtet, dass die Authentifizierung mit dem unix_socket
-Plugin und nicht mit einem Passwort vorgenommen wird. Da der Server das root-Konto für Aufgaben wie Protokollrotation sowie Starten und Anhalten des Servers nutzt, ist es am besten, die Authentifizierungsdaten des root-Kontos nicht zu ändern. Stattdessen empfehlen die Paketverwalter die Erstellung eines separaten Administratorkontos für passwortbasierten Zugriff.
Öffnen Sie dazu die MariaDB-Eingabeaufforderung in Ihrem Terminal:
- sudo mariadb
Erstellen Sie dann einen neuen Benutzer mit root-Berechtigungen und passwortbasiertem Zugriff. Achten Sie darauf, den Benutzernamen und das Passwort entsprechend Ihren Präferenzen zu ändern:
- GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
Bestätigen Sie die Berechtigungen, um sicherzustellen, dass sie in der aktuellen Sitzung gespeichert und verfügbar sind:
- FLUSH PRIVILEGES;
Beenden Sie anschließend die MariaDB Shell:
- exit
Sie können diesen neuen Benutzer mit dem Tool mysqladmin
testen. Das ist ein Client, der Sie administrative Befehle ausführen lässt. Der folgende mysqladmin
-Befehl stellt eine Verbindung zu MariaDB als admin-Benutzer her und gibt die Versionsnummer aus, nachdem der Benutzer zur Eingabe seines Passworts aufgefordert wurde:
- mysqladmin -u admin -p version
Sie erhalten eine ähnliche Ausgabe wie diese:
Outputmysqladmin Ver 9.1 Distrib 10.3.22-MariaDB, for debian-linux-gnu on x86_64
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Server version 10.3.22-MariaDB-1ubuntu1
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 4 min 49 sec
Threads: 7 Questions: 467 Slow queries: 0 Opens: 177 Flush tables: 1 Open tables: 31 Queries per second avg: 1.615
In diesem Leitfaden haben Sie das relationale Datenbankmanagementsystem MariaDB installiert und es mit dem Skript mysql_secure_installation
gesichert, das mit dem System installiert wird. Sie hatten die Möglichkeit, einen neuen administrativen Benutzer zu erstellen, der die Passwortauthentifizierung verwendet.
Nachdem Sie nun über einen laufenden und sicheren MariaDB-Server verfügen, finden Sie hier einige Beispiele für nächste Schritte, die Ihnen das Arbeiten mit dem Server erlauben:
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!