MariaDB unter Linux: Was es ist, wie man es installiert (Ubuntu/CentOS/Debian) und sichere Einrichtung

1. Was ist MariaDB?

Überblick und Hauptmerkmale von MariaDB

MariaDB ist ein Open-Source relationales Datenbankmanagementsystem (RDBMS). Es wurde auf Basis von MySQL entwickelt und wird aufgrund seiner hohen Kompatibilität in vielen Systemen und Anwendungen breit eingesetzt.

Ursprünglich, nachdem MySQL von Oracle übernommen wurde, haben einige seiner Entwickler das Projekt verlassen und das MariaDB-Projekt ins Leben gerufen. Infolgedessen behält MariaDB einen Befehlssatz und Datenstrukturen, die MySQL ähneln, legt jedoch Wert auf Offenheit und Transparenz im Design.

MariaDB ist kostenlos nutzbar und unterstützt ein breites Spektrum an Einsatzmöglichkeiten sowohl für kommerzielle als auch nicht‑kommerzielle Nutzung. Insbesondere hat es in Linux‑Serverumgebungen eine starke Erfolgsbilanz und wird wegen seiner Stabilität, Leistung und Sicherheit hoch geschätzt.

Unterschiede zu MySQL

MariaDB und MySQL sind sehr ähnlich, und viele Befehle sowie Konfigurationsdateien können unverändert verwendet werden. Es gibt jedoch mehrere wichtige Unterschiede.

  • Lizenzunterschiede Da MySQL von Oracle entwickelt und verwaltet wird, können Lizenzbeschränkungen in einigen kommerziellen Nutzungsszenarien gelten. MariaDB hingegen basiert auf der GPL (GNU General Public License) und ermöglicht eine flexiblere Nutzung.
  • Entwicklungsgeschwindigkeit und community‑getriebener Ansatz MariaDB wird aktiv in einer community‑getriebenen Weise entwickelt und neigt dazu, neue Funktionen schneller einzuführen. Es ist besonders stark in unternehmensorientierten Features (wie Speicher‑Engine‑Optionen und Leistungsoptimierungen).
  • Erweiterbarkeit und Kompatibilität MariaDB behält eine hohe Kompatibilität zu MySQL bei, bietet jedoch eigene Speicher‑Engines (wie Aria und ColumnStore), die je nach Anwendungsfall flexible Operationen ermöglichen. Allerdings können mit fortschreitenden Versionen Kompatibilitätsunterschiede auftreten, sodass bei Migrationen Vorsicht geboten ist.

Vorteile der Wahl von MariaDB

Beim Einsatz einer Datenbank in einer Linux‑Umgebung bietet MariaDB die folgenden Vorteile:

  • Einfache Installation mit einer simplen Konfiguration
  • Leichtgewichtig und schnelle Leistung
  • Skalierbarkeit, die groß angelegte Datenverarbeitung bewältigen kann
  • Stabile Langzeitbetrieb
  • Umfangreiches Wissen und Support‑Ressourcen von Entwicklern weltweit

Aus diesen Gründen wird MariaDB für ein breites Spektrum an Umgebungen gewählt, von persönlichen Entwicklungs‑Setups bis hin zu Unternehmens‑Produktionssystemen.

2. Vorbereitung vor der Installation

Bevor MariaDB in einer Linux‑Umgebung installiert wird, gibt es mehrere Punkte, die bestätigt werden müssen, sowie Vorbereitungsschritte, die durchgeführt werden sollten. Das Überspringen dieses Schrittes kann später zu Problemen führen, daher ist eine gründliche Vorbereitung sehr wichtig.

Systemanforderungen prüfen

MariaDB ist eine leichtgewichtige und schnelle Datenbank, hat jedoch Mindestanforderungen an das System. Nachfolgend finden Sie allgemeine Richtlinien (sie variieren je nach Version und Einsatz):

  • Betriebssystem : Linux-Distributionen wie Ubuntu, Debian, CentOS und RHEL
  • CPU : 1 GHz oder höher (Mehrkern‑Prozessor empfohlen)
  • Arbeitsspeicher : 512 MB oder mehr (1 GB oder mehr empfohlen)
  • Speicher : 1 GB oder mehr freien Speicherplatz (je nach Datenvolumen anpassen)
  • Netzwerk : Internetverbindung erforderlich, um Pakete zu beziehen und Updates anzuwenden

Beachten Sie, dass auf älteren Linux‑Distributionen die neuesten MariaDB‑Versionen möglicherweise nicht unterstützt werden. Prüfen Sie Ihre Linux‑Version und fügen Sie bei Bedarf Repositorys hinzu oder ergreifen Sie entsprechende Maßnahmen.

Erforderliche Pakete prüfen und aktualisieren

Um MariaDB zu installieren, verwendet man typischerweise den standardmäßigen Paketmanager des Betriebssystems (wie APT oder YUM). Ein vorheriges Aktualisieren des Systems hilft, Abhängigkeitsprobleme zu vermeiden.

Hier ein Beispiel für Ubuntu/Debian:

sudo apt update
sudo apt upgrade -y

Unter CentOS/RHEL führen Sie Folgendes aus:

sudo yum update -y

Stellen Sie außerdem sicher, dass die folgenden Pakete installiert sind (installieren Sie sie, falls sie fehlen):

  • curl : Wird verwendet, wenn das MariaDB-Repository hinzugefügt wird
  • gnupg : Wird verwendet, um Signierschlüssel zu überprüfen
  • software-properties-common (hauptsächlich für Ubuntu): Erforderlich für die Verwaltung von PPAs. Nicht immer notwendig auf Debian.

Den offiziellen MariaDB-Repository in Betracht ziehen

In vielen Linux-Distributionen ist MariaDB in den Standard-Paket-Repositories enthalten, aber die bereitgestellte Version kann älter sein.

Wenn Sie immer die neueste stabile Version verwenden möchten, können Sie das offizielle MariaDB-Repository hinzufügen. Der nächste Abschnitt stellt betriebssystemspezifische Schritte vor, aber die Vorabentscheidung, welche Version Sie verwenden werden, macht die Installation reibungsloser.

3. Installationsschritte nach Hauptverteilung

MariaDB ist in vielen Linux-Distributionen verfügbar, aber die Installationsmethoden unterscheiden sich leicht. In diesem Abschnitt gehen wir detaillierte Installationsschritte für drei repräsentative Distributionen durch: Ubuntu, CentOS und Debian.

MariaDB auf Ubuntu installieren

Auf Ubuntu installieren Sie MariaDB mit dem APT-Paketmanager. Dieser Abschnitt richtet sich an Ubuntu 20.04 / 22.04 LTS.

1. Die Paketliste aktualisieren

sudo apt update

2. MariaDB installieren

sudo apt install mariadb-server -y

Dieser Befehl installiert automatisch MariaDB und seine erforderlichen Abhängigkeitspakete.

3. Den Dienst starten und aktivieren

sudo systemctl start mariadb
sudo systemctl enable mariadb

4. Überprüfen, ob es läuft

sudo systemctl status mariadb

Wenn Sie „active (running)“ sehen, hat es erfolgreich gestartet.

MariaDB auf CentOS installieren

Auf CentOS 7 und CentOS Stream 8 verwenden Sie YUM oder dnf. Da die Standard-Repositories oft ältere Versionen bereitstellen, ist es üblich, das offizielle Repository hinzuzufügen.

1. Das offizielle Repository hinzufügen (Beispiel: MariaDB 10.6)

sudo vi /etc/yum.repos.d/MariaDB.repo

Fügen Sie Folgendes ein und speichern Sie:

[mariadb]
name = MariaDB
baseurl = https://downloads.mariadb.com/MariaDB/mariadb-10.6/yum/centos7-amd64
gpgkey=https://downloads.mariadb.com/MariaDB/MariaDB-Server-GPG-KEY
gpgcheck=1

*Passen Sie die Version und OS-Einstellungen bei Bedarf an Ihre Umgebung an.

2. Pakete installieren

sudo yum install mariadb-server -y

Oder auf CentOS Stream 8 und neuer:

sudo dnf install mariadb-server -y

3. Den Dienst starten und aktivieren

sudo systemctl start mariadb
sudo systemctl enable mariadb

MariaDB auf Debian installieren

Debian verwendet ebenfalls APT, aber indem Sie das offizielle MariaDB-Repository anstelle der Standard-Repositories verwenden, können Sie die neueste stabile Version installieren.

1. Abhängigkeitspakete installieren

sudo apt install curl software-properties-common gnupg -y

2. Das MariaDB-Repository hinzufügen (Beispiel: Debian 11 „Bullseye“)

curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash

3. Installieren

sudo apt update
sudo apt install mariadb-server -y

4. Den Dienst starten und aktivieren

sudo systemctl start mariadb
sudo systemctl enable mariadb

4. Zeichenfolgenkonfiguration

Einer der wichtigsten Punkte beim Einsatz von MariaDB in einer japanischen Umgebung ist die Konfiguration des Zeichensatzes (Kodierung). Da Japanisch mehrbyteige Zeichen enthält, kann der Start des Betriebs mit falschen Einstellungen zu Problemen wie verunstaltetem Text oder Datenkorruption führen.

Empfohlener Zeichensatz für japanische Umgebungen: UTF-8

Für MariaDB ist der empfohlene Zeichensatz utf8mb4. Er ist fähiger als das veraltete utf8 und unterstützt 4-Byte-Zeichen wie Emoji, was ihn nicht nur für Japanisch, sondern auch für mehrsprachige Umgebungen geeignet macht.

In den Standardeinstellungen der MySQL-Familie sehen Sie möglicherweise latin1 oder utf8, und das Beibehalten dieser kann zu Problemen führen. Ändern Sie daher die Einstellung direkt nach der Installation zu utf8mb4.

So bearbeiten Sie die Konfigurationsdatei (my.cnf)

Die Konfigurationsdatei von MariaDB befindet sich typischerweise unter /etc/mysql/my.cnf oder /etc/my.cnf. Fügen Sie die Abschnitte [client] und [mysqld] hinzu oder bearbeiten Sie sie, wie unten gezeigt.

[client]
default-character-set = utf8mb4
[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci

Nachdem Sie die Einstellungen geändert haben, starten Sie MariaDB neu, um sie anzuwenden:

sudo systemctl restart mariadb

Überprüfen Sie, ob die Einstellungen übernommen wurden

Verbinden Sie sich mit MariaDB und bestätigen Sie, dass die Einstellungen übernommen wurden.

sudo mariadb

Nach dem Verbinden führen Sie den folgenden Befehl aus:

SHOW VARIABLES LIKE 'character\_set%';

Erwartete Beispielausgabe:

character_set_client    utf8mb4
character_set_connection utf8mb4
character_set_database   utf8mb4
character_set_results    utf8mb4
character_set_server     utf8mb4

Wenn es so aussieht, wurde die Zeichensatzkonfiguration korrekt angewendet.

Hinweis: Zeichensätze für vorhandene Daten

Wenn Sie bereits vorhandene Datenbanken oder Tabellen haben, ändern sich deren Zeichensätze nicht automatisch. Bei Bedarf müssen Sie sie einzeln mit einer ALTER-Anweisung ändern, wie im Folgenden:

ALTER DATABASE your_database_name CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;

Ebenso können Sie die Einstellungen auf Tabellen- oder Spaltenebene ändern.

5. Sicherheitskonfiguration

Direkt nach der Installation von MariaDB ist die Sicherheit noch nicht vollständig gehärtet. Durch das Anwenden minimaler wesentlicher Sicherheitseinstellungen vor dem produktiven Einsatz können Sie das Risiko von unbefugtem Zugriff und Datenlecks verringern. Dieser Abschnitt stellt grundlegende Schritte zur MariaDB-Sicherheitskonfiguration vor.

Führen Sie mysql_secure_installation aus

MariaDB stellt ein Sicherheits‑Härtungsskript bereit, das Sie sofort nach der Installation ausführen sollten: mysql_secure_installation.

Führen Sie es mit dem folgenden Befehl aus:

sudo mysql_secure_installation

Wenn Sie es ausführen, werden nacheinander mehrere Fragen angezeigt. Hier ist die Bedeutung jeder Option.

  1. Setzen (oder aktualisieren) des Root‑Passworts → Legen Sie ein Passwort für den MariaDB‑Administrator‑Benutzer „root“ fest. Verwenden Sie ein starkes Passwort.
  2. Entfernen anonymer Benutzer → Standardmäßig kann ein „anonymer“ Benutzer existieren. Das ist unnötig und riskant, daher wird das Entfernen empfohlen .
  3. Remote‑Root‑Login verbieten → Root‑Zugriff direkt von externen Netzwerken ist extrem gefährlich. In den meisten Fällen sollte dies verboten werden .
  4. Entfernen der Testdatenbank → Die für Tests erstellte „test“-Datenbank ist in vielen Fällen ebenfalls unnötig. Entfernen wird empfohlen .
  5. Neuladen der Privilegientabellen → Dies wendet die obigen Änderungen sofort an. Bestätigen Sie mit „Ja“ .

Das Beantworten all dieser Fragen stärkt die Sicherheit von MariaDB in seinem anfänglichen Standardzustand erheblich.

Firewall-Konfiguration (falls erforderlich)

MariaDB kommuniziert typischerweise über den Port 3306. Ob Sie diesen Port öffnen sollten, hängt davon ab, wie Sie das System nutzen möchten.

  • Bei lokaler Nutzung oder auf einem eigenständigen Server → Sie können Port 3306 geschlossen lassen.
  • Bei externem Zugriff (z. B. Verbindung von einer Anwendung auf einem anderen Server) → Öffnen Sie den Zugriff nur für erforderliche IP‑Adressen.

Beispiel: Zugriff mit UFW auf Ubuntu

sudo ufw allow from 192.168.0.10 to any port 3306

Erstellen Sie einen anderen Benutzer als root (empfohlen)

In der Produktion ist es bewährte Praxis, ein dediziertes Benutzerkonto anstelle des Administrator‑Benutzers „root“ zu erstellen und zu verwenden. Hier ein Beispiel:

CREATE USER 'appuser'@'localhost' IDENTIFIED BY 'secure_password';
GRANT ALL PRIVILEGES ON your_database.* TO 'appuser'@'localhost';
FLUSH PRIVILEGES;

Die Verwendung separater Benutzer pro Anwendung hilft, die Auswirkungen bei einem Kompromittieren von Anmeldedaten zu minimieren.

6. Verifizierung

Nach der Installation von MariaDB, dem Abschluss der Erstkonfiguration und der Anwendung von Sicherheitsmaßnahmen ist der letzte Schritt, zu überprüfen, dass alles korrekt funktioniert. Dieser Abschnitt erklärt, wie Sie die Konnektivität bestätigen und grundlegende SQL‑Befehle ausführen.

Verbinden Sie sich mit MariaDB

Nach der Installation überprüfen Sie, ob Sie sich mit dem folgenden Befehl mit MariaDB verbinden können:

sudo mariadb

Oder, wenn Sie den Benutzer angeben und ein Passwort bereitstellen möchten:

mariadb -u root -p

Geben Sie, wenn Sie dazu aufgefordert werden, das Passwort ein, das Sie mit mysql_secure_installation festgelegt haben.

Wenn die Anmeldung erfolgreich ist, sehen Sie eine Eingabeaufforderung wie die folgende:

Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 10
Server version: 10.6.16-MariaDB MariaDB Server

Wenn Sie das sehen, läuft MariaDB normal und Sie können sich erfolgreich verbinden.

Eine Datenbank erstellen

Als nächstes, als einfachen Test, erstellen Sie eine Datenbank.

CREATE DATABASE testdb CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

Wenn es erfolgreich ausgeführt wird, wurde die Datenbank ohne Probleme erstellt.

Überprüfen Sie die Liste der vorhandenen Datenbanken:

SHOW DATABASES;

Wenn testdb erscheint, hat es funktioniert.

Eine Tabelle erstellen und Daten einfügen

Erstellen Sie eine Testtabelle und fügen Sie einige Daten ein.

USE testdb;

CREATE TABLE users (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(50),
  email VARCHAR(100)
);

INSERT INTO users (name, email) VALUES ('田中太郎', 'taro-tanaka@example.com');

※Dieses Beispiel überprüft, dass mehrbyteiger (japanischer) Text korrekt mit utf8mb4 gespeichert wird.

Daten abrufen

Um die eingefügten Daten zu bestätigen, führen Sie die folgende Abfrage aus.

SELECT * FROM users;

Wenn die Ausgabe die Informationen für Taro Tanaka zeigt, können Sie schließen, dass die Datenbank korrekt funktioniert.

Serverinformationen prüfen

Wenn Sie grundlegende Informationen wie die MariaDB-Version prüfen möchten, führen Sie den folgenden Befehl aus:

STATUS;

Dies zeigt Details wie den Verbindungsstatus, die Serverversion und die Zeichenkodierungskonfiguration an.

7. FAQ (Häufig gestellte Fragen)

Beim Installieren und Betreiben von MariaDB in einer Linux-Umgebung stoßen viele Menschen auf häufige Fragen oder Probleme. Zu wissen, wie man sie im Voraus behandelt, kann beruhigend sein. Hier haben wir häufig gesuchte Punkte in einem FAQ-Format für Anfänger bis Fortgeschrittene zusammengefasst.

Q1. Wie kann ich die MariaDB-Version prüfen?

Nachdem Sie sich mit MariaDB verbunden haben, können Sie die Version prüfen, indem Sie den folgenden Befehl ausführen.

SELECT VERSION();

Oder Sie können direkt von der Befehlszeile aus wie folgt prüfen:

mariadb --version

Beispielausgabe:

mariadb  Ver 15.1 Distrib 10.6.16-MariaDB, for Linux (x86_64)

Q2. Was soll ich tun, wenn während der Installation „Package not found“ angezeigt wird?

Prüfen Sie Folgendes:

  • Die Paketliste ist nicht aktuell → Führen Sie sudo apt update oder sudo yum update aus und versuchen Sie es erneut
  • Das offizielle MariaDB-Repository wurde nicht korrekt hinzugefügt → Überprüfen Sie die Repository-Konfigurationsdateien (z. B. /etc/apt/sources.list.d/ oder /etc/yum.repos.d/ )
  • Ihre Distribution und die MariaDB-Version sind nicht kompatibel → Überprüfen Sie die unterstützten Versionen auf der offiziellen MariaDB- Downloadseite

Q3. Wie deinstalliere ich MariaDB?

Für Ubuntu/Debian:

sudo apt remove --purge mariadb-server mariadb-client -y
sudo apt autoremove -y

Für CentOS/RHEL:

sudo yum remove mariadb-server -y

Danach, wenn Sie auch Daten- und Konfigurationsdateien entfernen möchten, führen Sie Folgendes aus:

sudo rm -rf /var/lib/mysql
sudo rm -rf /etc/my.cnf /etc/mysql

*Wenn Sie wichtige Daten haben, sichern Sie diese unbedingt, bevor Sie etwas löschen.

Q4. Wie sichere und stelle ich eine Datenbank wieder her?

Backup (Dump-Datei erstellen):

mysqldump -u root -p your_database > backup.sql

Wiederherstellung:

mysql -u root -p your_database < backup.sql

Diese Methode ist einfach und verbreitet und sehr nützlich für MariaDB-Migrationen und die Wiederherstellung nach Katastrophen.

Q5. Warum kann ich nicht von außerhalb des Servers auf MariaDB zugreifen?

Mögliche Ursachen sind:

  • bind-address ist auf 127.0.0.1 gesetzt → In /etc/mysql/my.cnf oder /etc/my.cnf ändern Sie es zu bind-address = 0.0.0.0 (achten Sie auf die Sicherheit)
  • Port 3306 wird von der Firewall blockiert → Öffnen Sie den Port mit etwa sudo ufw allow 3306
  • Der Benutzer hat keine Berechtigung für Remote-Verbindungen → Sie müssen einen Benutzer in der Form user@'%' erstellen