Wann FLUSH PRIVILEGES in MySQL verwendet werden (und wann nicht verwendet werden)
Beim Erstellen neuer Benutzer und der zugehörigen Datenbanken ist es üblich, Befehle auszuführen wie:
CREATE DATABASE mydb; GRANT ALL PRIVILEGES ON mydb.* TO myuser@localhost IDENTIFIED BY "mypassword";
Allerdings sieht man oft, dass der Befehl FLUSH PRIVILEGES auch danach verwendet wird Diese Befehle in Tutorials. Dies wirft die Frage auf: Wann ist FLUSH PRIVILEGES tatsächlich notwendig?
Wenn FLUSH PRIVILEGES unnötig ist
Wie in der MySQL-Dokumentation erwähnt, erfordern durch GRANT zugewiesene Privilegien kein FLUSH PRIVILEGIEN in Kraft treten. Der MySQL-Server erkennt diese Änderungen sofort und lädt die Grant-Tabellen neu.
Wenn FLUSH PRIVILEGES erforderlich ist
FLUSH PRIVILEGES ist nur erforderlich, wenn Grant-Tabellen direkt mit Befehlen wie geändert werden INSERT, UPDATE oder DELETE. In diesen Fällen werden Änderungen bei der Berechtigungsprüfung erst berücksichtigt, wenn der Server neu gestartet oder die Gewährungstabellen mit FLUSH PRIVILEGES neu geladen werden.
Diese Unterscheidung ist wichtig zu verstehen, um Verwirrung zu vermeiden, die entstehen kann, wenn Änderungen an vorgenommen werden Grant-Tabellen über direkte Änderungen scheinen keine Auswirkung zu haben.
Das obige ist der detaillierte Inhalt vonWann werden FLUSH PRIVILEGES in MySQL tatsächlich benötigt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!