Zum Hauptinhalt springen
S-EDV news
← Alle Anleitungen
📘 Anleitung Linux 01.10.2026 · 9 min Lesezeit

KeyHelp: Datenbanken und Benutzer anlegen und mit phpMyAdmin oder Adminer verwalten

So legen Kunden in KeyHelp Datenbanken mit eigenem Benutzer an, so wählen Sie Namensregel und Werkzeug, und so prüfen Sie mit SHOW GRANTS, dass jeder Benutzer nur seine eine Datenbank sieht.

Geprüft am 01.10.2026 · für KeyHelp 26.1.1

WerbelinksMit * markierte Links sind Werbelinks: Bei einem Kauf erhalten wir eine Provision, der Preis bleibt gleich. Als Amazon-Partner verdiene ich an qualifizierten Verkäufen. Mehr dazu

Illustration eines Hosting-Panels mit der Überschrift KeyHelp Datenbanken und den Karten Anlegen, Rechte, Verwalten

Jede Website mit WordPress, Shop oder Wiki braucht eine eigene Datenbank mit eigenem Benutzer. In KeyHelp legen Kunden beides selbst an, ohne SSH und ohne SQL-Kenntnisse, und verwalten die Inhalte anschließend im Browser. Diese Anleitung zeigt, wie Sie als Administrator die Namensregeln und das Verwaltungswerkzeug festlegen, wie der Kunde Datenbanken anlegt und was KeyHelp dabei in MariaDB tatsächlich einrichtet, nachgewiesen mit SHOW GRANTS. Außerdem erfahren Sie, welche Werkzeuge KeyHelp mitbringt: phpMyAdmin und Adminer sind beide installiert, aktiv ist immer nur eines. Die Anleitung richtet sich an Administratoren eines Servers wie in KeyHelp installieren und absichern. Getestet haben wir mit KeyHelp 26.1.1 und MariaDB 10.11 auf Debian 12.

Voraussetzungen

  • Ein KeyHelp-Server mit Administrator-Zugang. Getestet mit KeyHelp 26.1.1 (Build 3698) auf Debian 12.15 mit MariaDB 10.11.18.
  • Ein Kundenkonto, im Beispiel kunde1, dessen Kontingent noch Datenbanken zulässt (im Test „Unbegrenzt“).
  • SSH-Zugang als root, wenn Sie die Rechte in MariaDB selbst prüfen möchten. Für das Anlegen ist er nicht nötig.

Schritt 1: Namensregel und Werkzeug festlegen

Bevor Kunden Datenbanken anlegen, legen Sie als Administrator zwei Dinge fest. Unter „Konfiguration“, „Datenbank-Server“ steht die „Richtlinie für Datenbank- und Datenbankbenutzernamen“ mit drei Optionen:

  • „Automatisch generierte Namen“ (Grundzustand): „Die Namen werden automatisch auf der Grundlage des Benutzernamens generiert.“ Der Kunde sieht gesperrte Felder mit dem Text „Diese Information wird automatisch ausgefüllt.“
  • „Eingeschränkte Namenswahl“: „Den Namen wird der Benutzername vorangestellt, ansonsten können sie individuell vergeben werden.“
  • „Freie Namenswahl“: „Die Namen können völlig individuell vergeben werden.“

Mit „Eingeschränkte Namenswahl“ vergibt der Kunde sprechende Namen wie shop, KeyHelp stellt im Test kunde1_ voran. Die freie Namenswahl haben wir nicht getestet.

Unter „Konfiguration“, „Datenbank-Administration“ wählen Sie im Feld „Client für Datenbank-Administration“ zwischen „phpMyAdmin 5.2.3“ und „Adminer 6.0.1“. Ab Werk ist phpMyAdmin aktiv. Beide sind auf dem Server installiert:

ls /home/keyhelp/www/
adminer
db-administration
keyhelp
keyhelp.webstats
phpmyadmin
roundcube
snappymail
webmail

Im Feld „Benutzerdefinierte Zugriffs-URL“ können Sie stattdessen eine eigene Installation hinterlegen. Das haben wir nur mit einer ungültigen Eingabe ausprobiert (siehe „Typische Fehler“).

Verifizieren: Nach dem Speichern meldet das Panel „Die Einstellungen wurden aktualisiert. Die Änderungen werden in wenigen Augenblicken wirksam.“ Beim Kunden zeigt das Formular „Datenbank hinzufügen“ danach bei eingeschränkter Namenswahl das Präfix kunde1_ vor beiden Feldern.

Schritt 2: Datenbank als Kunde anlegen

Der Kunde öffnet „Ressourcen“, „Datenbanken“ und klickt auf „Datenbank hinzufügen“. Das Formular hat die Felder „Datenbankname“, „Benutzername“, „Beschreibung“, „Passwort *“ und „Passwort bestätigen *“. Über „Passwortvorschlag“ und „Generieren“ erzeugt KeyHelp ein Passwort, im Test 18 Zeichen lang. Die Beschreibung ist frei und erscheint später in der Liste, hilfreich bei mehreren Projekten.

Im Grundzustand mit automatischen Namen hat KeyHelp der zweiten Datenbank des Kunden den Namen kunde1_db1 gegeben:

Die Datenbank kunde1_db1 und der Datenbankbenutzer kunde1_db1 wurden erfolgreich hinzugefügt.

Mit eingeschränkter Namenswahl trägt der Kunde nur den Teil nach dem Präfix ein. Datenbank- und Benutzername dürfen sich unterscheiden:

Die Datenbank kunde1_shop-db und der Datenbankbenutzer kunde1_shop wurden erfolgreich hinzugefügt.
Die Datenbank kunde1_wp und der Datenbankbenutzer kunde1_wpuser wurden erfolgreich hinzugefügt.
KeyHelp-Kundenbereich Datenbanken mit zwei Datenbanken kunde1_db und kunde1_db1 samt Beschreibung Shop Testdatenbank, Größe und Link Verbindungsdaten anzeigen
Die Datenbankliste des Kunden mit Beschreibung und Aktionen.

Über „Anzeigen“ in der Spalte „Verbindungsdaten“ sieht der Kunde, was er in seine Anwendung einträgt: Datenbankname, Benutzername, Host localhost und Port 3306. Das Passwort zeigt KeyHelp dort nicht an, es lässt sich nur über „Bearbeiten“ neu setzen („Lassen Sie das Feld leer, um das aktuelle Passwort beizubehalten.“). Datenbank- und Benutzername sind beim Bearbeiten gesperrt.

Verifizieren: Die neue Datenbank erscheint in der Liste, der Zähler oben steigt (im Test „2 / Unbegrenzt“). In der VM zeigt MariaDB Datenbank und Benutzer:

mysql -e "SHOW DATABASES LIKE 'kunde1%'; SELECT user,host FROM mysql.user WHERE user LIKE 'kunde1%';"
kunde1_db
kunde1_db1
User	Host
kunde1_db	localhost
kunde1_db1	localhost

Schritt 3: Rechte mit SHOW GRANTS prüfen

Entscheidend für die Trennung der Kunden ist, welche Rechte der neue Benutzer bekommt. Prüfen Sie das als root:

mysql -e "SHOW GRANTS FOR kunde1_db1@localhost;"
Grants for kunde1_db1@localhost
GRANT USAGE ON *.* TO `kunde1_db1`@`localhost` IDENTIFIED BY PASSWORD (gekürzt)
GRANT ALL PRIVILEGES ON `kunde1\\_db1`.* TO `kunde1_db1`@`localhost`

Das bedeutet: Global hat der Benutzer nur USAGE, also das Recht zur Anmeldung. Alle Rechte gelten ausschließlich für seine eine Datenbank. Erlaubt ist nur der Host localhost, ein Zugriff von außen ist im Grundzustand nicht vorgesehen. Bei kunde1_shop sah das gleich aus, nur mit kunde1\\_shop-db. Das Passwort steht nur als Hash in MariaDB, wir haben ihn in der Ausgabe gekürzt.

Verifizieren: Melden Sie sich mit dem neuen Benutzer an und greifen Sie testweise auf eine fremde Datenbank zu:

mysql -u kunde1_db1 -p -e "SELECT CURRENT_USER(); SHOW DATABASES; USE kunde1_db; SHOW TABLES;"
ERROR 1044 (42000) at line 1: Access denied for user 'kunde1_db1'@'localhost' to database 'kunde1_db'
CURRENT_USER()
kunde1_db1@localhost
Database
information_schema
kunde1_db1

Der Benutzer sieht nur seine eigene Datenbank, selbst die zweite Datenbank desselben Kunden bleibt gesperrt. In der eigenen Datenbank darf er Tabellen anlegen und füllen, eine weitere Datenbank anlegen darf er nicht:

id	name
1	Testartikel
ERROR 1044 (42000) at line 1: Access denied for user 'kunde1_db1'@'localhost' to database 'kunde1_neu'

Schritt 4: Mit phpMyAdmin oder Adminer arbeiten

In der Datenbankliste hat jede Zeile unter „Aktionen“ ein Datenbank-Symbol. Ein Klick meldet den Kunden ohne Passwort im aktiven Werkzeug an. Mit phpMyAdmin zeigt die Navigation links nur die gewählte Datenbank:

phpMyAdmin 5.2.3 nach dem Auto-Login aus KeyHelp mit der Datenbank kunde1_db1 und der Tabelle artikel, links nur diese eine Datenbank
phpMyAdmin nach dem Auto-Login: nur die gewählte Datenbank ist sichtbar.

Wie das ohne Passwort funktioniert, zeigt ein Blick in MariaDB. Im Test legte KeyHelp bei jedem der beiden Auto-Logins einen eigenen MariaDB-Benutzer an. Sein Name beginnt mit _keyhelp_auto_login_, gefolgt von einer 13-stelligen Hex-Kennung (hier weggelassen). Laut SHOW GRANTS hat er wie der Kundenbenutzer global nur USAGE und ALL PRIVILEGES nur auf kunde1\\_db1, nur von localhost.

Die Zuordnung führt KeyHelp in seiner eigenen Datenbank in der Tabelle databases_auto_login mit Zeitstempel. Nach zwei Anmeldungen standen dort zwei Einträge. Ob und wann KeyHelp diese Hilfsbenutzer wieder entfernt, haben wir nicht beobachtet.

Haben Sie in Schritt 1 Adminer gewählt, zeigt der symbolische Link db-administration auf das Adminer-Verzeichnis. Die Adresse /db/ bleibt gleich, im Test vom Server selbst abgerufen:

readlink -f /home/keyhelp/www/db-administration
curl -sk --resolve server.example.de:443:127.0.0.1 https://server.example.de/db/ | grep -o -i -m3 "<title>[^<]*</title>"
/home/keyhelp/www/adminer
Login - Adminer
Adminer 6.0.1 nach dem Auto-Login aus KeyHelp, angemeldet an MariaDB auf localhost, Liste mit der einzigen Datenbank kunde1_db1 und geladenem Plugin AdminerKeyHelp
Adminer mit dem Plugin AdminerKeyHelp, ebenfalls nur mit der gewählten Datenbank.

Adminer zeigte im Test neben der mitgelieferten Version 6.0.1 die Versionsnummer 6.1.1 an, also eine neuere Version.

Verifizieren: Das Auto-Login öffnet das gewählte Werkzeug, Adminer zeigt „Angemeldet als“ einen Benutzer _keyhelp_auto_login_…@localhost und listet nur die eine Datenbank.

Schritt 5: Datenbank löschen

Das Papierkorb-Symbol führt zu „Löschen bestätigen“ mit Datenbank- und Benutzername. Erst nach Aktivieren der Checkbox „Bestätigung“ löscht KeyHelp:

Die folgenden Elemente wurden gelöscht.
kunde1_neu / kunde1_kunde1_db

Datenbank und Benutzer verschwinden dabei gemeinsam. Sichern Sie vorher, was Sie noch brauchen, etwa mit dem Export im Werkzeug.

Verifizieren: In MariaDB gibt es danach weder Datenbank noch Benutzer:

Treffer: 0

Typische Fehler

„Das von Ihnen eingegebene Passwort stimmt nicht mit der Passwortbestätigung überein.“ Die beiden Passwortfelder weichen ab. Nutzen Sie „Generieren“ und kopieren Sie den Vorschlag in beide Felder.

„Das von Ihnen eingegebene Kennwort ist in einer Datenbank mit den am häufigsten verwendeten Zugangsdaten aufgeführt. Bitte wählen Sie ein sichereres Passwort.“ So reagierte KeyHelp im Test auf abc.

„Der Datenbank-Benutzer kunde1_shop existiert bereits.“ und „Die Datenbank kunde1_db1 existiert bereits.“ Bei eingeschränkter Namenswahl kann der Kunde Namen wählen, die schon vergeben sind, auch automatisch erzeugte. Einen vorhandenen Benutzer für eine zweite Datenbank wiederzuverwenden lehnte das Panel im Test ab.

„Ungültige Angabe im Feld Datenbankname.“ Der Name enthielt Leerzeichen. Ein 36 Zeichen langer Name aus Buchstaben und Ziffern sowie ein Bindestrich wurden dagegen akzeptiert.

Doppeltes Präfix. Trägt der Kunde bei eingeschränkter Namenswahl das Präfix selbst ein, etwa kunde1_db als Benutzername, entsteht kunde1_kunde1_db. KeyHelp meldet das nicht.

„Gib eine URL ein.“ Diese Browsermeldung erscheint, wenn Sie im Feld „Benutzerdefinierte Zugriffs-URL“ eine Adresse ohne https:// eintragen.

Häufige Fragen

Kann ein Datenbankbenutzer auf mehrere Datenbanken zugreifen?

Nicht über das Panel. KeyHelp legt je Datenbank genau einen Benutzer an und vergibt Rechte nur auf diese Datenbank. Im Test durfte kunde1_db1 nicht einmal die andere Datenbank desselben Kunden öffnen.

Welchen Host trage ich in WordPress oder anderen Anwendungen ein?

localhost und Port 3306, so steht es in den Verbindungsdaten. Die Benutzer sind nur für localhost angelegt.

Was ist mit Zugriff von außen, etwa für HeidiSQL?

Dafür gibt es unter „Konfiguration“, „Datenbank-Server“ den Schalter „Fernzugriff erlauben“. Er ist ab Werk aus und gehört in eine eigene Betrachtung mit Firewall-Regeln. In diesem Test blieb er aus.

Kann der Kunde zwischen phpMyAdmin und Adminer wählen?

Im Test nicht. Die Auswahl trifft der Administrator unter „Konfiguration“, „Datenbank-Administration“. Nach der Umstellung auf Adminer öffnete auch das Auto-Login des Kunden Adminer. Der Kunde erreicht das aktive Werkzeug über das Symbol in der Datenbankliste.

Wird die Datenbank beim Löschen gesichert?

Das Panel zeigte keinen Hinweis auf eine Sicherung, es löschte Datenbank und Benutzer direkt. Exportieren Sie vorher selbst oder nutzen Sie das KeyHelp-Backup.

Testumfang

Wir haben auf KeyHelp 26.1.1 Datenbanken mit automatischen und eingeschränkten Namen angelegt, das Bearbeiten-Formular geöffnet und Datenbanken gelöscht, die Rechte mit SHOW GRANTS und echten Anmeldungen geprüft und das Auto-Login mit phpMyAdmin und Adminer getestet. Auffällig: Jeder der beiden Auto-Logins erzeugte einen eigenen MariaDB-Benutzer. Nicht geprüft haben wir freie Namenswahl, eigene Zugriffs-URL, Fernzugriff, mehrere Kunden auf demselben Server und ob KeyHelp die Auto-Login-Benutzer später entfernt. Prüfen Sie nach dem Anlegen die Rechte selbst.

Fazit

KeyHelp 26.1.1 trennte Datenbanken im Test sauber: ein Benutzer je Datenbank, Rechte nur auf diese eine, Zugriff nur von localhost. Das Anlegen braucht keine SQL-Kenntnisse, und das Auto-Login erspart das Hantieren mit Passwörtern im Browser. Als Administrator legen Sie vorab die Namensregel fest, mit eingeschränkter Namenswahl vergeben Kunden sprechende Namen, und wählen zwischen phpMyAdmin und Adminer. Wer mehrere Datenbanken mit einem Benutzer braucht, muss das außerhalb des Panels lösen.

Weiterführende Anleitungen und Quellen

KeyHelpMariaDBDatenbankphpMyAdminAdminerWebhosting