Es gibt zwei verschiedene Möglichkeiten, Benutzer hinzuzufügen: durch Verwendung der GRANT-Anweisung oder durch direktes Bearbeiten der MySQL-Grant-Tabelle. Ein besserer Ansatz ist die Verwendung von GRANT-Anweisungen, da diese prägnanter sind und weniger fehleranfällig erscheinen.
Das folgende Beispiel zeigt, wie ein neuer Benutzer mithilfe des MySQL--Clients installiert wird. In diesen Beispielen wird davon ausgegangen, dass Berechtigungen standardmäßig installiert sind, wie im vorherigen Abschnitt beschrieben. Das bedeutet, dass Sie sich zum Vornehmen von Änderungen auf demselben Computer befinden müssen, auf dem MySQL ausgeführt wird, dass Sie als MySQL-Root-Benutzer verbunden sein müssen und dass der Root-Benutzer über Einfügeberechtigungen und Administratorrechte zum Neuladen für die MySQL-Datenbank verfügen muss . Wenn Sie das Root-Benutzerkennwort ändern, müssen Sie es außerdem mit dem folgenden MySQL-Befehl angeben.
Sie können neue Benutzer hinzufügen, indem Sie eine GRANT-Anweisung ausgeben:
Der Code lautet wie folgt:
shell> mysql --user=root mysql mysql> GRANT ALL PRIVILEGES ON *.* TO monty@localhost IDENTIFIED BY 'something' WITH GRANT OPTION; mysql> GRANT ALL PRIVILEGES ON *.* TO monty@"%" IDENTIFIED BY 'something' WITH GRANT OPTION; mysql> GRANT RELOAD,PROCESS ON *.* TO admin@localhost; mysql> GRANT USAGE ON *.* TO dummy@localhost;
Diese GRANT-Anweisungen installieren 3 neue Benutzer:
monty: Ein vollwertiger Superuser, der von überall aus eine Verbindung zum Server herstellen kann, dafür aber ein Passwort („etwas“) verwenden muss. Beachten Sie, dass wir eine GRANT-Anweisung für monty@localhost und monty@„%“ ausgeben müssen. Wenn wir den Eintrag „localhost“ hinzufügen, erhält der von „mysql_install_db“ erstellte Eintrag für den anonymen Benutzereintrag von „localhost“ Priorität, da er einen spezifischeren Host-Feldwert hat und daher in der Sortierreihenfolge der Benutzertabelle früher steht >
admin: Ein Benutzer, der sich ohne Passwort von localhost aus verbinden kann und über Administratorrechte zum erneuten Laden und Verarbeiten verfügt. Dadurch kann der Benutzer die Befehle mysqladmin reload, mysqladmin restart und mysqladmin
flush-* ausführen. sowie dem mysqladmin-Prozess werden keine Berechtigungen für die Datenbank erteilt. Sie können später durch Ausgabe einer weiteren GRANT-Anweisung erteilt werden: Ein Benutzer kann sich ohne Kennwort anmelden Vom lokalen Host aus sind die globalen Berechtigungen auf „N“ festgelegt. Der Berechtigungstyp „USAGE“ ermöglicht die Einrichtung von datenbankbezogenen Berechtigungen dieselben Benutzerzugriffsinformationen und weisen Sie dann den Server an, die Autorisierungstabelle erneut zu laden: Der Code lautet wie folgt:
[Verwandte Empfehlungen]
1.
Kostenloses MySQL-Video-Tutorial
shell> mysql --user=root mysql mysql> INSERT INTO user VALUES('localhost','monty',PASSW ORD ('something'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y') mysql> INSERT INTO user VALUES('%','monty',PASSWORD('something'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y') mysql> INSERT INTO user SET Host='localhost',User='admin', Reload_priv='Y', Process_priv='Y'; mysql> INSERT INTO user (Host,User,Password) VALUES('localhost','dummy',''); mysql> FLUSH PRIVILEGES;
2.
Detaillierte Beispiele, wie PHP Bilder in MySQL speichert
5. MySQL ändert Passwort und ausführliche Erläuterung von Beispielen für Zugriffsbeschränkungen
Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung von Beispielen zum Hinzufügen neuer Benutzerberechtigungen in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!