Fabian St.: MySQL: User der andere User erstellen darf

Beitrag lesen

Hi!

ich möchte mit MySQL-User einen User anlegen, der das recht hat, einen anderen MySQL-User anzulegen, dazu eine Datenbank für ihn, und ihm dafür Rechte zu geben.
Ich möchte dies _nicht_ als Root machen, da dies ein PHP-Script erledigen soll.

Meine Frage ist jetzt, welche Rechte der User braucht.
Nur das globale Recht 'CREATE' und 'GRANT' reicht _nicht_.

Was für rechte braucht er also noch?
Ich möchte, dass der User nur das Minimum an Rechten erhält.

Um einem solchen MySQL-User alle Rechte zu geben, die er für deine Anforderungen braucht, ist folgender Query nötig (Beachte die grant option!):

  
GRANT ALL ON *.* to user@localhost identified by 'password' with grant option;  

Damit gewährst du dem User »user« alle Rechte, weißt ihm das Passwort 'password' zu und erlaubst ihm ferner, neue Benutzer anzulegen. Der springende Punkt dabei ist jedoch, dass dies nichts anderes als der Rootaccount ist, da eben für dein Vorhaben alle diese Rechte benötigt werden.

Grüße,
Fabian St.