phpMyAdmin installieren
phpMyAdmin ist eine webbasierte Verwaltungsoberfläche für MySQL- und MariaDB-Datenbanken.
Mit phpMyAdmin kannst du Datenbanken, Tabellen, Benutzer und Inhalte direkt im Browser verwalten. Das ist besonders praktisch, wenn du keine Datenbankbefehle über die Konsole ausführen möchtest.
Voraussetzungen
Für phpMyAdmin benötigst du einen Server mit:
Linux
Webserver, zum Beispiel Apache oder Nginx
PHP
MySQL oder MariaDB
SSH-Zugriff
Root- oder sudo-Rechten
In dieser Anleitung verwenden wir Debian oder Ubuntu als Grundlage.
Vor der Installation
Aktualisiere zuerst dein System.
Befehl:
apt update
Danach installierst du verfügbare Updates.
Befehl:
apt upgrade
Wenn wichtige Systemupdates installiert wurden, kann ein Neustart sinnvoll sein.
Befehl:
reboot
MariaDB installieren
Falls noch keine Datenbank installiert ist, kannst du MariaDB installieren.
Befehl:
apt install mariadb-server mariadb-client
Starte MariaDB und aktiviere den automatischen Start beim Booten.
Befehl:
systemctl enable mariadb
Befehl:
systemctl start mariadb
Prüfe den Status.
Befehl:
systemctl status mariadb
MariaDB absichern
Nach der Installation solltest du MariaDB absichern.
Befehl:
mysql_secure_installation
Folge den Fragen im Terminal.
Empfehlungen:
Root-Passwort ändern
Ja, falls noch nicht gesetzt
Anonyme Benutzer entfernen
Ja
Root-Login aus der Ferne deaktivieren
Ja
Testdatenbank entfernen
Ja
Rechte neu laden
Ja
Datenbankbenutzer erstellen
Für phpMyAdmin und deine Anwendungen solltest du nicht dauerhaft mit dem MariaDB-Root-Benutzer arbeiten.
Melde dich bei MariaDB an.
Befehl:
mysql
Erstelle eine Datenbank.
Befehl:
CREATE DATABASE webseite;
Erstelle einen Benutzer.
Befehl:
CREATE USER 'webuser'@'localhost' IDENTIFIED BY 'SICHERES_PASSWORT';
Gib dem Benutzer Rechte auf die Datenbank.
Befehl:
GRANT ALL PRIVILEGES ON webseite.* TO 'webuser'@'localhost';
Lade die Rechte neu.
Befehl:
FLUSH PRIVILEGES;
Verlasse MariaDB.
Befehl:
EXIT;
Ersetze SICHERES_PASSWORT durch ein eigenes, starkes Passwort.
phpMyAdmin installieren
Installiere phpMyAdmin über die Paketverwaltung.
Befehl:
apt install phpmyadmin
Während der Installation kann eine Abfrage erscheinen.
Bei Apache kannst du Apache auswählen, damit phpMyAdmin automatisch eingebunden wird.
Bei Nginx wird phpMyAdmin normalerweise nicht automatisch eingebunden. In diesem Fall musst du die Konfiguration manuell vornehmen.
Installation mit Apache
Wenn du Apache verwendest, wähle während der Installation apache2 aus.
Falls die Auswahl nicht erscheint oder nicht korrekt gesetzt wurde, kannst du phpMyAdmin manuell aktivieren.
Befehl:
ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf
Danach aktivierst du die Konfiguration.
Befehl:
a2enconf phpmyadmin
Apache neu laden:
systemctl reload apache2
phpMyAdmin ist danach normalerweise erreichbar unter:
http://SERVER-IP/phpmyadmin
Wenn du bereits eine Domain mit SSL verwendest, nutze besser:
https://deinedomain.de/phpmyadmin
Installation mit Nginx
Bei Nginx muss phpMyAdmin meistens manuell eingebunden werden.
Ein einfacher Weg ist ein symbolischer Link in dein Webverzeichnis.
Beispiel für /var/www/html:
ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin
Danach ist phpMyAdmin erreichbar unter:
http://SERVER-IP/phpmyadmin
Wenn du eine eigene Domain verwendest, kann die Adresse so aussehen:
https://deinedomain.de/phpmyadmin
Achte darauf, dass PHP-FPM für deine Nginx-Webseite korrekt eingerichtet ist. Ohne funktionierende PHP-Verarbeitung zeigt Nginx PHP-Dateien nicht korrekt an.
Benötigte PHP-Erweiterungen prüfen
phpMyAdmin benötigt verschiedene PHP-Erweiterungen.
Installiere häufig benötigte Erweiterungen:
apt install php-mbstring php-zip php-gd php-json php-curl php-mysql
Danach Apache oder PHP-FPM neu starten.
Bei Apache:
systemctl restart apache2
Bei Nginx mit PHP-FPM:
systemctl restart php8.2-fpm
Die PHP-Version kann abweichen. Prüfe deine installierte Version bei Bedarf mit:
php -v
Login in phpMyAdmin
Öffne phpMyAdmin im Browser.
Beispiel:
https://deinedomain.de/phpmyadmin
Melde dich mit einem MariaDB- oder MySQL-Benutzer an.
Beispiel:
Benutzername
webuser
Passwort
Passwort des Datenbankbenutzers
Root-Login in phpMyAdmin
Auf vielen Systemen kann sich der MariaDB-Root-Benutzer nicht direkt in phpMyAdmin anmelden.
Das liegt häufig daran, dass der Root-Benutzer über Unix-Socket-Authentifizierung arbeitet.
Das ist normal.
Nutze für phpMyAdmin besser einen eigenen Datenbankbenutzer.
Wenn du einen administrativen Datenbankbenutzer erstellen möchtest, kannst du das in MariaDB tun.
Befehl:
CREATE USER 'adminuser'@'localhost' IDENTIFIED BY 'SICHERES_PASSWORT';
Befehl:
GRANT ALL PRIVILEGES ON *.* TO 'adminuser'@'localhost' WITH GRANT OPTION;
Befehl:
FLUSH PRIVILEGES;
Nutze solche administrativen Benutzer nur, wenn du sie wirklich brauchst.
phpMyAdmin absichern
phpMyAdmin ist ein häufiges Ziel automatischer Angriffe. Deshalb solltest du die Installation absichern.
Zugriffspfad ändern
Der Standardpfad /phpmyadmin ist bekannt und wird häufig automatisch gescannt.
Du kannst den Pfad ändern, indem du den Link anders benennst.
Beispiel:
mv /var/www/html/phpmyadmin /var/www/html/dbverwaltung
Danach erreichst du phpMyAdmin unter:
https://deinedomain.de/dbverwaltung
Bei Apache musst du dafür die Konfiguration anpassen, wenn phpMyAdmin über /etc/phpmyadmin/apache.conf eingebunden wird.
Zusätzlichen Passwortschutz verwenden
Du kannst phpMyAdmin zusätzlich mit einem HTTP-Passwortschutz absichern.
Das ist sinnvoll, weil Angreifer dann nicht direkt zur phpMyAdmin-Anmeldemaske gelangen.
Bei Apache kannst du dafür .htaccess und .htpasswd verwenden.
Installiere das benötigte Paket:
apt install apache2-utils
Erstelle eine Passwortdatei:
htpasswd -c /etc/phpmyadmin/.htpasswd admin
Danach musst du den Passwortschutz in der Apache-Konfiguration für phpMyAdmin einbinden.
Zugriff per IP begrenzen
Wenn du phpMyAdmin nur von einer bestimmten IP-Adresse aus verwendest, kannst du den Zugriff zusätzlich einschränken.
Das ist besonders sicher, wenn du eine feste IP-Adresse hast.
Beispiel für Apache-Konfiguration:
Require ip DEINE-IP-ADRESSE
Ersetze DEINE-IP-ADRESSE durch deine eigene IP-Adresse.
HTTPS verwenden
phpMyAdmin sollte nicht unverschlüsselt über HTTP genutzt werden.
Aktiviere HTTPS mit einem SSL-Zertifikat, zum Beispiel über Let's Encrypt.
Wenn du phpMyAdmin über HTTP verwendest, können Anmeldedaten im Netzwerk leichter abgefangen werden.
Datenbankbenutzer begrenzen
Verwende für Webseiten und Anwendungen eigene Datenbankbenutzer.
Gib einem Benutzer nur die Rechte, die er wirklich benötigt.
Beispiel:
Eine WordPress-Webseite benötigt normalerweise nur Rechte auf ihre eigene Datenbank, nicht auf alle Datenbanken des Servers.
Häufige Probleme
phpMyAdmin ist nicht erreichbar
Prüfe:
läuft der Webserver?
ist phpMyAdmin installiert?
stimmt der Pfad?
ist PHP korrekt eingerichtet?
blockiert die Firewall Port
80oder443?zeigt die Domain auf den richtigen Server?
Status von Apache prüfen:
systemctl status apache2
Status von Nginx prüfen:
systemctl status nginx
PHP-Datei wird heruntergeladen
Wenn der Browser eine PHP-Datei herunterlädt, verarbeitet dein Webserver PHP nicht korrekt.
Bei Apache prüfe, ob PHP installiert und aktiviert ist.
Bei Nginx prüfe, ob PHP-FPM korrekt eingebunden ist.
Login schlägt fehl
Prüfe:
Benutzername korrekt?
Passwort korrekt?
Datenbankbenutzer existiert?
Benutzer darf sich von
localhostanmelden?MariaDB oder MySQL läuft?
Bei MariaDB kannst du Benutzer so anzeigen:
SELECT User, Host FROM mysql.user;
Root-Login funktioniert nicht
Das ist bei MariaDB auf Debian oder Ubuntu häufig normal.
Nutze einen eigenen Datenbankbenutzer statt Root.
Fehlende PHP-Erweiterung
Wenn phpMyAdmin eine fehlende PHP-Erweiterung meldet, installiere die passende Erweiterung.
Beispiel:
apt install php-mbstring
Danach den Webserver oder PHP-FPM neu starten.
403 Forbidden
Ein 403-Fehler bedeutet, dass der Zugriff verweigert wird.
Mögliche Ursachen:
falsche Rechte
falsche Webserver-Konfiguration
IP-Beschränkung
fehlende Index-Datei
Zugriffspfad nicht erlaubt
404 Not Found
Ein 404-Fehler bedeutet, dass der Pfad nicht gefunden wurde.
Mögliche Ursachen:
phpMyAdmin ist nicht installiert
symbolischer Link fehlt
falscher Pfad
Apache-Konfiguration nicht aktiviert
Webserver wurde nicht neu geladen
Wartung
Halte phpMyAdmin regelmäßig aktuell.
Aktualisierung unter Debian oder Ubuntu:
apt update
apt upgrade
Wenn du phpMyAdmin manuell installiert hast, musst du Updates selbst einspielen.
Alternative zu phpMyAdmin
phpMyAdmin ist praktisch, aber nicht immer notwendig.
Alternativen sind:
Adminer
MySQL Workbench
DBeaver
direkte Verwaltung über die MySQL-Konsole
Für öffentlich erreichbare Server ist eine schlanke Lösung wie Adminer oft einfacher, sollte aber ebenfalls gut abgesichert werden.
Support kontaktieren
Wenn du phpMyAdmin nicht einrichten kannst, kontaktiere den Support.
Gib dabei bitte an:
Betriebssystem
verwendeter Webserver: Apache oder Nginx
verwendete PHP-Version
verwendete Datenbank: MySQL oder MariaDB
genaue Fehlermeldung
URL oder Pfad, unter dem phpMyAdmin erreichbar sein soll
was du bereits versucht hast
Sende niemals Datenbankpasswörter, Root-Passwörter oder private Zugangsdaten an den Support.
Zuletzt aktualisiert