Sowohl MariaDB als auch MySQL sind Open-Source-Datenbanken, die SQL verwenden und dieselbe ursprüngliche Codebasis verwenden. MariaDB ist ein Drop-In-Ersatz für MySQL, so sehr, dass Sie denselben Befehl verwenden (mysql
), um mit MySQL- und MariaDB-Datenbanken zu interagieren. Dieser Artikel gilt daher gleichermaßen für MariaDB und MySQL.
Installieren Sie MariaDB
Sie können MariaDB mit dem Paketmanager Ihrer Linux-Distribution installieren. Bei den meisten Distributionen ist MariaDB in ein Serverpaket und ein Clientpaket aufgeteilt. Das Serverpaket stellt die Datenbank-„Engine“ bereit, den Teil von MariaDB, der (normalerweise auf einem physischen Server) im Hintergrund läuft und auf Dateneingaben oder Anfragen zur Datenausgabe wartet. Das Client-Paket stellt den Befehl mysql
bereit , über die Sie mit dem Server kommunizieren können.
Unter RHEL, Fedora, CentOS oder ähnlichem:
$ sudo dnf install mariadb mariadb-server
Unter Debian, Ubuntu, Elementary oder ähnlich:
$ sudo apt install mariadb-client mariadb-server
Weitere Linux-Ressourcen
- Spickzettel für Linux-Befehle
- Spickzettel für fortgeschrittene Linux-Befehle
- Kostenloser Online-Kurs:RHEL Technical Overview
- Spickzettel für Linux-Netzwerke
- SELinux-Spickzettel
- Spickzettel für allgemeine Linux-Befehle
- Was sind Linux-Container?
- Unsere neuesten Linux-Artikel
Andere Systeme können MariaDB anders packen, daher müssen Sie möglicherweise Ihr Software-Repository durchsuchen, um zu erfahren, wie die Betreuer Ihrer Distribution es bereitstellen.
MariaDB starten
Da MariaDB teilweise als Datenbankserver fungiert, kann es auf einem Computer ausgeführt und von einem anderen verwaltet werden. Solange Sie Zugriff auf den Computer haben, auf dem es ausgeführt wird, können Sie mysql
verwenden Befehl zum Verwalten der Datenbank. Beim Schreiben dieses Artikels habe ich MariaDB auf meinem lokalen Computer ausgeführt, aber es ist genauso wahrscheinlich, dass Sie mit einer MariaDB-Datenbank interagieren, die auf einem Remote-System gehostet wird.
Bevor Sie MariaDB starten, müssen Sie eine anfängliche Datenbank erstellen. Sie sollten den Benutzer definieren, den MariaDB beim Initialisieren der Dateistruktur verwenden soll. Standardmäßig verwendet MariaDB den aktuellen Benutzer, aber Sie möchten wahrscheinlich, dass es ein dediziertes Benutzerkonto verwendet. Ihr Paketmanager hat wahrscheinlich einen Systembenutzer und eine Gruppe für Sie konfiguriert. Verwenden Sie grep
um herauszufinden, ob es ein mysql
gibt Gruppe:
$ grep mysql /etc/group
mysql:x:27:
Sie können auch in /etc/passwd
nachsehen für einen dedizierten Benutzer, aber normalerweise gibt es dort, wo es eine Gruppe gibt, auch einen Benutzer. Wenn es kein dediziertes mysql
gibt Benutzer und Gruppe, schauen Sie in /etc/group
nach für eine offensichtliche Alternative (wie mariadb
). Andernfalls lesen Sie die Dokumentation Ihrer Distribution, um zu erfahren, wie MariaDB ausgeführt wird.
Angenommen, Ihre Installation verwendet mysql
, initialisieren Sie die Datenbankumgebung:
$ sudo mysql_install_db --user=mysql
Installing MariaDB/MySQL system tables in '/var/lib/mysql'...
OK
[...]
Das Ergebnis dieses Schritts zeigt die nächsten Aufgaben, die Sie ausführen müssen, um MariaDB zu konfigurieren:
PLEASE REMEMBER TO SET A PASSWORD FOR THE MariaDB root USER !
To do so, start the server, then issue the following commands:
'/usr/bin/mysqladmin' -u root password 'new-password'
'/usr/bin/mysqladmin' -u root -h $(hostname) password 'new-password'
Alternatively you can run:
'/usr/bin/mysql_secure_installation'
which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.
Starten Sie MariaDB mit dem Init-System Ihrer Distribution:
$ sudo systemctl start mariadb
So aktivieren Sie den Start des MariaDB-Servers beim Booten:
$ sudo systemctl enable --now mariadb
Nachdem Sie nun einen MariaDB-Server zur Kommunikation haben, legen Sie ein Passwort dafür fest:
mysqladmin -u root password 'myreallysecurepassphrase'
mysqladmin -u root -h $(hostname) password 'myreallysecurepassphrase'
Wenn Sie diese Installation schließlich auf einem Produktionsserver verwenden möchten, führen Sie mysql_secure_installation
aus Befehl, bevor Sie live gehen.