For the complete documentation index, see llms.txt. This page is also available as Markdown.

MariaDB installieren

MariaDB ist ein Datenbankserver und wird häufig für Webseiten, Anwendungen, Webpanels, Shopsysteme, Foren, Bots und eigene Projekte verwendet.

In diesem Artikel erklären wir dir, wie du MariaDB auf einem Linux KVM-Server installierst, absicherst und eine erste Datenbank mit Benutzer anlegst.

Was ist MariaDB?

MariaDB ist ein relationaler Datenbankserver.

Eine Datenbank speichert strukturierte Daten. Anwendungen nutzen Datenbanken zum Beispiel für:

  • Benutzerkonten

  • Einstellungen

  • Beiträge

  • Produkte

  • Bestellungen

  • Logdaten

  • Spielerdaten

  • Sitzungen

  • Konfigurationen

MariaDB ist mit vielen Anwendungen kompatibel, die auch MySQL unterstützen.

Voraussetzungen

Du benötigst:

  • einen KVM-Server mit Linux

  • Root-Zugriff oder einen Benutzer mit sudo-Rechten

  • eine SSH-Verbindung zum Server

  • grundlegende Kenntnisse im Umgang mit der Konsole

Diese Anleitung eignet sich besonders für:

  • Debian

  • Ubuntu

Bei AlmaLinux oder Rocky Linux sind einzelne Befehle anders.

Mit dem Server verbinden

Verbinde dich zuerst per SSH mit deinem Server.

Beispiel:

ssh root@SERVER-IP

Ersetze SERVER-IP durch die IP-Adresse deines KVM-Servers.

Wenn du einen eigenen SSH-Port verwendest, gib den Port zusätzlich an.

Beispiel:

ssh root@SERVER-IP -p 2222

Paketlisten aktualisieren

Aktualisiere zuerst die Paketlisten.

Befehl:

apt update

Danach solltest du vorhandene Updates installieren.

Befehl:

apt upgrade

Wenn wichtige Systemupdates installiert wurden, kann ein Neustart sinnvoll sein.

Befehl:

reboot

MariaDB installieren

Installiere MariaDB mit folgendem Befehl:

apt install mariadb-server mariadb-client

Während der Installation werden der MariaDB-Server und das passende Client-Programm installiert.

Der Serverdienst wird danach meistens automatisch gestartet.

MariaDB-Dienst prüfen

Prüfe nach der Installation, ob MariaDB läuft.

Befehl:

systemctl status mariadb

Wenn der Dienst aktiv ist, wird der Status als active oder running angezeigt.

Falls MariaDB nicht läuft, kannst du den Dienst starten.

Befehl:

systemctl start mariadb

Damit MariaDB nach einem Neustart automatisch startet, aktiviere den Dienst.

Befehl:

systemctl enable mariadb

MariaDB absichern

Nach der Installation solltest du MariaDB absichern.

Dafür gibt es ein eigenes Sicherheitsprogramm.

Befehl:

mysql_secure_installation

Das Programm stellt mehrere Fragen.

Typische Empfehlungen:

Frage
Empfehlung

Root-Passwort setzen oder ändern

Ja, wenn noch keins gesetzt ist

Anonyme Benutzer entfernen

Ja

Root-Login aus der Ferne verbieten

Ja

Testdatenbank entfernen

Ja

Rechte-Tabellen neu laden

Ja

Je nach MariaDB-Version können die Fragen etwas anders formuliert sein.

Bei MariaDB anmelden

Nach der Installation kannst du dich lokal am Datenbankserver anmelden.

Befehl:

mariadb

oder:

mysql

Auf vielen Debian- und Ubuntu-Systemen funktioniert die Anmeldung als Root-Benutzer über das lokale Systemkonto.

Wenn ein Passwort benötigt wird, nutze:

mariadb -u root -p

Danach wirst du nach dem MariaDB-Root-Passwort gefragt.

Datenbank erstellen

Erstelle eine neue Datenbank.

Beispiel:

CREATE DATABASE webseite;

Der Name webseite ist nur ein Beispiel. Du kannst einen eigenen Namen verwenden.

Empfehlung:

  • nur Kleinbuchstaben verwenden

  • keine Leerzeichen verwenden

  • eindeutigen Namen nutzen

Beispiel:

CREATE DATABASE minecraft_stats;

Datenbankbenutzer erstellen

Erstelle einen eigenen Benutzer für deine Anwendung.

Beispiel:

CREATE USER 'webuser'@'localhost' IDENTIFIED BY 'sicheres_passwort';

Ersetze:

  • webuser durch den gewünschten Benutzernamen

  • sicheres_passwort durch ein starkes Passwort

Verwende nicht denselben Benutzer für alle Anwendungen.

Rechte vergeben

Damit der Benutzer auf die Datenbank zugreifen kann, musst du Rechte vergeben.

Beispiel:

GRANT ALL PRIVILEGES ON webseite.* TO 'webuser'@'localhost';

Damit darf der Benutzer webuser auf alle Tabellen der Datenbank webseite zugreifen.

Danach Rechte neu laden:

FLUSH PRIVILEGES;

MariaDB verlassen:

EXIT;

Verbindung testen

Teste, ob der neue Benutzer funktioniert.

Befehl:

mariadb -u webuser -p webseite

Gib danach das Passwort des Benutzers ein.

Wenn die Anmeldung funktioniert, ist der Benutzer korrekt eingerichtet.

MariaDB wieder verlassen:

EXIT;

Datenbank für eine Webseite verwenden

Viele Webseiten oder Anwendungen fragen bei der Installation nach Datenbankdaten.

Typische Angaben sind:

Feld
Wert

Datenbank-Host

localhost

Datenbank-Port

3306

Datenbankname

Name deiner Datenbank

Benutzername

Name deines Datenbankbenutzers

Passwort

Passwort des Datenbankbenutzers

Wenn die Anwendung auf demselben Server läuft wie MariaDB, ist der Host meistens localhost.

MariaDB von außen erreichbar machen

Standardmäßig sollte MariaDB nicht öffentlich aus dem Internet erreichbar sein.

Das ist aus Sicherheitsgründen sinnvoll.

Wenn eine Anwendung auf demselben Server läuft, brauchst du keinen externen Zugriff.

Wenn du MariaDB trotzdem von einem anderen Server aus erreichen möchtest, musst du die Konfiguration ändern und die Firewall anpassen.

Wichtig: Öffne MariaDB nicht öffentlich für das gesamte Internet, wenn es nicht notwendig ist.

Bind-Adresse prüfen

Die MariaDB-Konfiguration befindet sich je nach System an unterschiedlichen Stellen.

Häufige Datei:

/etc/mysql/mariadb.conf.d/50-server.cnf

Öffne die Datei:

nano /etc/mysql/mariadb.conf.d/50-server.cnf

Suche nach:

bind-address

Wenn MariaDB nur lokal erreichbar sein soll, sollte dort stehen:

bind-address = 127.0.0.1

Wenn MariaDB von außen erreichbar sein soll, kann die Adresse angepasst werden.

Beispiel:

bind-address = 0.0.0.0

Danach MariaDB neu starten:

systemctl restart mariadb

Wichtig: 0.0.0.0 bedeutet, dass MariaDB auf allen Netzwerkadressen lauscht. Nutze das nur, wenn du genau weißt, was du tust.

Firewall für MariaDB

Der Standardport von MariaDB ist 3306.

Wenn MariaDB nur lokal genutzt wird, muss dieser Port nicht in der Firewall geöffnet werden.

Wenn externer Zugriff nötig ist, solltest du den Zugriff nur für bestimmte IP-Adressen erlauben.

Beispiel mit UFW:

ufw allow from 123.123.123.123 to any port 3306 proto tcp

Ersetze 123.123.123.123 durch die IP-Adresse des Servers oder Systems, das auf MariaDB zugreifen darf.

Nicht empfohlen:

ufw allow 3306/tcp

Dieser Befehl öffnet MariaDB für alle erreichbaren Quellen.

Benutzer für externen Zugriff erstellen

Wenn ein Benutzer von einem anderen Server zugreifen soll, reicht 'localhost' nicht aus.

Beispiel für Zugriff von einer bestimmten IP-Adresse:

CREATE USER 'remoteuser'@'123.123.123.123' IDENTIFIED BY 'sicheres_passwort';

Rechte vergeben:

GRANT ALL PRIVILEGES ON webseite.* TO 'remoteuser'@'123.123.123.123';

Rechte neu laden:

FLUSH PRIVILEGES;

Für öffentliche Zugriffe mit % solltest du sehr vorsichtig sein.

Beispiel:

'remoteuser'@'%'

Das bedeutet, dass sich der Benutzer grundsätzlich von überall verbinden darf, sofern Firewall und MariaDB-Konfiguration es erlauben.

MariaDB neu starten

Nach Konfigurationsänderungen musst du MariaDB neu starten.

Befehl:

systemctl restart mariadb

Status prüfen:

systemctl status mariadb

MariaDB-Logs prüfen

Wenn MariaDB nicht startet oder eine Verbindung fehlschlägt, helfen die Logs.

Befehl:

journalctl -u mariadb

Für aktuelle Meldungen:

journalctl -u mariadb -f

Je nach System können zusätzliche Logs in folgenden Verzeichnissen liegen:

  • /var/log/mysql/

  • /var/log/mariadb/

Datenbank sichern

Erstelle regelmäßig Backups deiner Datenbanken.

Eine einzelne Datenbank sicherst du mit:

mysqldump -u root -p webseite > webseite.sql

Alle Datenbanken sicherst du mit:

mysqldump -u root -p --all-databases > alle-datenbanken.sql

Die erzeugte .sql-Datei solltest du sicher speichern und nicht öffentlich erreichbar ablegen.

Datenbank wiederherstellen

Eine Datenbank kannst du aus einer SQL-Datei wiederherstellen.

Beispiel:

mariadb -u root -p webseite < webseite.sql

Achte darauf, dass die Datenbank vorher existiert.

Falls nicht, erstelle sie vorher:

CREATE DATABASE webseite;

MariaDB deinstallieren

Wenn du MariaDB nicht mehr benötigst, kannst du es entfernen.

Befehl:

apt remove mariadb-server mariadb-client

Konfigurationsdateien und Datenbanken können dabei weiterhin vorhanden bleiben.

Wenn du MariaDB vollständig entfernen möchtest, nutze:

apt purge mariadb-server mariadb-client

Wichtig: Dabei können Konfigurationen entfernt werden. Sichere vorher wichtige Datenbanken.

Häufige Probleme

Anmeldung als root funktioniert nicht

Auf vielen Debian- und Ubuntu-Systemen nutzt MariaDB für den lokalen Root-Zugriff ein Socket-Login.

Versuche:

sudo mariadb

oder melde dich direkt als Root-Benutzer am Server an und starte:

mariadb

Wenn du ein Passwort setzen möchtest, kannst du einen eigenen Datenbankbenutzer mit Administratorrechten erstellen.

Access denied for user

Diese Meldung bedeutet, dass Benutzername, Passwort, Host oder Rechte nicht passen.

Prüfe:

  • richtiger Benutzername

  • richtiges Passwort

  • richtiger Host, zum Beispiel localhost

  • Benutzer wurde für den richtigen Host erstellt

  • Rechte wurden vergeben

  • FLUSH PRIVILEGES wurde ausgeführt

Unknown database

Die angegebene Datenbank existiert nicht oder der Name wurde falsch geschrieben.

Prüfe vorhandene Datenbanken mit:

SHOW DATABASES;

Can't connect to local server

MariaDB läuft möglicherweise nicht.

Prüfe den Dienst:

systemctl status mariadb

Starte MariaDB bei Bedarf:

systemctl start mariadb

Verbindung von außen funktioniert nicht

Prüfe:

  • lauscht MariaDB auf der richtigen Adresse?

  • ist bind-address korrekt gesetzt?

  • ist Port 3306 in der Firewall erlaubt?

  • wurde der Benutzer für die richtige Quell-IP erstellt?

  • blockiert eine externe Firewall die Verbindung?

  • läuft MariaDB überhaupt?

Port 3306 ist öffentlich offen

Wenn MariaDB nicht öffentlich erreichbar sein muss, schließe den Port.

Bei UFW:

ufw deny 3306/tcp

Prüfe danach:

ufw status

Sicherheitshinweise

MariaDB sollte nur so offen erreichbar sein wie nötig.

Empfehlungen:

  • keine schwachen Datenbankpasswörter verwenden

  • keine öffentlichen Root-Zugänge erlauben

  • Datenbankport nicht unnötig öffnen

  • eigene Benutzer pro Anwendung erstellen

  • Rechte nur für benötigte Datenbanken vergeben

  • regelmäßige Backups erstellen

  • MariaDB und das Betriebssystem aktuell halten

  • Backups nicht im öffentlichen Webverzeichnis speichern

Support kontaktieren

Wenn MariaDB nicht funktioniert und du Hilfe benötigst, kontaktiere den Support.

Gib dabei bitte folgende Informationen an:

  • Betriebssystem

  • MariaDB-Version, falls bekannt

  • genaue Fehlermeldung

  • betroffener Benutzer

  • ob der Zugriff lokal oder extern erfolgen soll

  • ob MariaDB gestartet ist

  • was du bereits versucht hast

Sende keine Datenbankpasswörter oder private Zugangsdaten an den Support.

Zuletzt aktualisiert