In diesem Artikel werden hauptsächlich die relevanten Informationen des MySQL-Benutzers Berechtigungsverwaltung im Detail vorgestellt.
Die Benutzerberechtigungsverwaltung hat hauptsächlich die folgenden Funktionen:
1 kann einschränken, auf welche Bibliotheken und Tabellen Benutzer zugreifen können
2. Sie können einschränken, welche Tabellen Benutzer SELECT, CREATE, DELETE, DELETE, ALTER und andere Vorgänge ausführen können
3 IP- oder Domänenname4. Sie können einschränken, ob die eigenen Berechtigungen für andere Benutzer autorisiert werden können
Der Code lautet wie folgt :
mysql> grant all privileges on *.* to 'yangxin'@'%' identified by 'yangxin123456' with grant option;
•alle Privilegien: bedeutet, dem Benutzer alle Privilegien zu gewähren. Es können auch spezifische Berechtigungen angegeben werden, wie zum Beispiel: SELECT, CREATE, DROP usw.
•on: gibt an, für welche Datenbanken und Tabellen diese Berechtigungen gelten. Format: Name der Datenbanktabelle. Wenn Sie hier „*“ schreiben, werden alle Datenbanken und alle Tabellen angezeigt. Wenn ich Berechtigungen angeben möchte, die auf die Benutzertabelle der Testbibliothek angewendet werden sollen, kann ich schreiben: test.user
•to: Welchen Benutzer Berechtigungen erteilen. Format: „Benutzername“@„Anmelde-IP oder Domänenname“. % bedeutet, dass es keine Einschränkung gibt und Sie sich von jedem Host aus anmelden können. Beispiel: „yangxin“@“192.168.0.%“ bedeutet, dass sich der Benutzer yangxin nur im IP-Segment 192.168.0 anmelden kann
•identifiziert durch: Angeben das Anmeldekennwort des Benutzers
•mit Grant-Option: bedeutet, dass Benutzer ihre Berechtigungen anderen Benutzern erteilen können, für die sie GRANT verwenden können Wenn Sie Benutzern Berechtigungen hinzufügen, werden die Berechtigungen automatisch überlagert und überschreiben nicht die zuvor erteilten Berechtigungen. Wenn Sie beispielsweise zuerst eine SELECT-Berechtigung für den Benutzer und dann eine INSERT-Berechtigung für den Benutzer hinzufügen, verfügt der Benutzer über sowohl SELECT als auch INSERT-Berechtigungen.
Die Berechtigungsliste der Benutzerdetails finden Sie in den Anweisungen auf der offiziellen MySQL-Website:
Nachdem Sie Berechtigungsänderungen für den Benutzer vorgenommen haben, stellen Sie sicher, dass Sie dies tun Denken Sie daran, die Berechtigungen neu zu laden und die Berechtigungen zu ändern. Informationen werden aus dem Speicher in die Datenbank geschrieben.
mysql> Flush-Berechtigungen;3. Benutzerberechtigungen anzeigen
Der Code lautet wie folgt:
mysql> grant select,create,drop,update,alter on *.* to 'yangxin'@'localhost' identified by 'yangxin0917' with grant option; mysql> show grants for 'yangxin'@'localhost';Berechtigungen wiederherstellen
Die Erstellungsberechtigung des Benutzers yangxin kann nicht
erstellt werden Datenbankenund Tabellen. > Benutzer 'test3'@'%' in 'test1'@'%' umbenennen;
mysql> revoke create on *.* from 'yangxin@localhost'; mysql> flush privileges;Passwort ändern
mysql> select host,user from user; +---------------+---------+ | host | user | +---------------+---------+ | % | root | | % | test3 | | % | yx | | 192.168.0.% | root | | 192.168.0.% | test2 | | 192.168.0.109 | test | | ::1 | yangxin | | localhost | yangxin | +---------------+---------+ 8 rows in set (0.00 sec) mysql> drop user 'yangxin'@'localhost';1> Aktualisieren Sie die mysql.user-Tabelle
2> 🎜>Syntax:
Passwort festlegen für 'Benutzername'@'Anmeldeadresse'=Passwort('Passwort')MySQL> Passwort festlegen für 'root'@'localhost'=Passwort(' 123456') ;
3> mysqladmin
mysql> use mysql; # mysql5.7之前 mysql> update user set password=password('123456') where user='root'; # mysql5.7之后 mysql> update user set authentication_string=password('123456') where user='root'; mysql> flush privileges;
Syntax: mysqladmin -u Benutzername -p altes Passwort Passwort Neues Passwort
mysqladmin> InstallationVerzeichnis Verzeichnis
8. Passwort vergessen
1> Konfiguration zum Überspringen der Anmeldeberechtigung hinzufügen Ändern Sie my.cnf und fügen Sie die Konfiguration „skip-grant-tables“ im MySQLd-Konfigurationsknoten hinzu
[mysqld]skip-grant-tables
2> MySQL-Dienst neu starten
Shell> Dienst MySQL neu starten
3>
Zu diesem Zeitpunkt ist das Benutzerkennwort nicht erforderlich, wenn Sie sich mit dem MySQL-Befehl am Terminal anmelden. Anschließend können Sie das Kennwort gemäß der ersten Methode zum Ändern des Kennworts ändern.
4> Anmeldeberechtigungen wiederherstellen und Überprüfung der Konfiguration überspringen
Löschen Sie die Skip-Grant-Tables-Konfiguration des mysqld-Knotens in my.cnf und dann Starten Sie den Dienst neu. Das war's.
Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der Beispiele für die Verwaltung von MySQL-Benutzerrechten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!