phpMyAdmin – Wie funktioniert das unter der Haube?¶
phpMyAdmin ist schnell installiert – aber weisst du wirklich was dabei passiert? Dieser Beitrag führt dich Schritt für Schritt durch die wichtigsten Fragen.
1. Braucht phpMyAdmin eine eigene Datenbank?¶
Führe nach der Installation folgenden Befehl in MySQL aus:
Du wirst eine Datenbank namens phpmyadmin sehen. Diese gehört nicht zu WordPress, sondern zu phpMyAdmin selbst.
Was steckt darin?
Diese Datenbank speichert Benutzereinstellungen, gespeicherte Abfragen (Lesezeichen) und andere phpMyAdmin-spezifische Daten. Sie ist optional – phpMyAdmin funktioniert auch ohne sie, aber gewisse Funktionen fehlen dann.
Wo liegt das Schema dieser Datenbank?
Dort findest du die SQL-Datei mit der Struktur der phpMyAdmin-Datenbank.
2. Braucht phpMyAdmin einen eigenen MySQL-Benutzer?¶
Ja. Schau dir die Benutzer in MySQL an:
Du wirst einen Benutzer namens phpmyadmin sehen. Das ist der Systembenutzer den phpMyAdmin intern verwendet, um sich mit MySQL zu verbinden – unabhängig davon mit welchem Benutzer du dich über das Login-Formular anmeldest.
Wo sind die Zugangsdaten dieses Benutzers definiert?
In dieser Datei stehen:
- $dbuser – der MySQL-Benutzername (meist phpmyadmin)
- $dbpass – das automatisch generierte Passwort
- $dbname – die phpMyAdmin-Datenbank
- $dbserver – der MySQL-Host (meist localhost)
Diese Datei wurde automatisch während
apt install phpmyadminerstellt. Das Passwort wurde dabei zufällig generiert.
Welche Rechte hat dieser Benutzer?
Dieser Benutzer hat nur Rechte auf die phpmyadmin-Datenbank – nicht auf deine WordPress-Datenbank. Er ist also kein Admin.
3. Authentifizierungsarten¶
phpMyAdmin unterstützt verschiedene Methoden, um Benutzer zu authentifizieren. Die Konfiguration findest du hier:
Suche nach der Zeile mit auth_type:
Die wichtigsten Authentifizierungsarten:¶
| Typ | Beschreibung | Sicherheit |
|---|---|---|
cookie |
Login-Formular wird angezeigt. Zugangsdaten werden verschlüsselt im Browser-Cookie gespeichert. | ✅ Empfohlen |
config |
Benutzername und Passwort sind direkt in der config.inc.php hinterlegt. Kein Login-Formular. |
❌ Unsicher |
http |
HTTP Basic Authentication (Browser-Popup). | ⚠️ Nur mit HTTPS sinnvoll |
signon |
Authentifizierung über eine separate Login-Session. | ✅ Für komplexe Setups |
Warum ist cookie empfohlen?
Bei cookie werden die Zugangsdaten nicht in der Konfigurationsdatei gespeichert. Jede Person meldet sich mit ihrem eigenen MySQL-Benutzer an. Bei config hingegen haben alle Benutzer automatisch Zugriff mit denselben hardcodierten Zugangsdaten – das ist ein Sicherheitsrisiko.
Was ist das Blowfish-Secret?
Das Blowfish-Secret ist ein zufälliger Schlüssel, mit dem phpMyAdmin die Cookie-Daten verschlüsselt. Es sollte mindestens 32 Zeichen lang sein. Ein leeres oder kurzes Secret erzeugt eine Warnung in phpMyAdmin.
Zusammenfassung¶
| Frage | Antwort |
|---|---|
| Eigene Datenbank? | Ja – phpmyadmin DB für interne Einstellungen |
| Eigener MySQL-User? | Ja – phpmyadmin User, nur Rechte auf phpmyadmin DB |
| Zugangsdaten wo? | /etc/phpmyadmin/config-db.php |
| Standard Auth-Typ? | cookie – sicherste Option |
| Config-Datei? | /etc/phpmyadmin/config.inc.php |