root-Passwort ändern:
Mit dem Client "mysqladmin":
mysqladmin --user=root --password=altesPasswort password neuesPasswort
Als MySQL-Befehl:
USE mysql;
UPDATE user SET Password=PASSWORD('neuesPasswort') WHERE user='root';
Anschließend müssen die Änderungen übernommen werden:
flush privileges;
Benutzer-Passwort ändern:
SET PASSWORD FOR user = PASSWORD('neuesPasswort');
Benutzer anlegen:
ohne Passwort:
CREATE USER username;
mit Passwort im Klartext:
CREATE USER username IDENTIFIED BY 'einPasswort';
mit Passwort als Hash-Wert:
Mit select password('12345'); Hash-Wert erzeugen.
password('123456') liefert:
2ff898e158cd0311
Benutzer anlegen:
create user benutzer1@'localhost' identified by password ’2ff898e158cd0311′;
Anmerkung:
Benutzerkonten werden wie folgt benannt:
'username'@'host'
Beispiele:
Benutzer "gast" mit Zugriff von localhost aus: gast@'localhost'
Benutzer "gast" mit Zugriff von überall aus: gast@'%'
Benutzer löschen:
DROP USER benutzer;
Rechte vergeben:
GRANT was ON welcheTabelle TO WEM;
Beispiel:
GRANT select, insert ON schule.lehrer TO mustermann@'localhost';
Gibt dem Benutzer "mustermann" das Recht select und insert auf die Tabelle schule.lehrer auszuführen (vom Rechner localhost aus).
Wann man die Rechte auf alle Tabellen in der Datenbank "schule" vergeben will, verwendet man schule.*
Rechte nehmen:
REVOKE select, insert ON schule.lehrer FROM mustermann@'localhost';
Benutzer anzeigen:
Benutzer werden in MySQL in der Tabelle mysql.user verwaltet (Zugriff über root).
Alle Informationen anzeigen:
select * from mysql.user;
Nur Benutzer und Passwörter:
select user, password from mysql.user;