Heim  >  Artikel  >  Datenbank  >  MySQL Advanced Seventeen – Gewährung von MySQL-Kontoberechtigungen

MySQL Advanced Seventeen – Gewährung von MySQL-Kontoberechtigungen

黄舟
黄舟Original
2016-12-29 17:03:141529Durchsuche

1. Funktion und Bedeutung

Das MySQL-Berechtigungssystem wird hauptsächlich verwendet, um die Berechtigungen der mit der Datenbank verbundenen Benutzer zu überprüfen, um festzustellen, ob es sich um einen legalen Benutzer handelt Wenn Sie ein rechtmäßiger Benutzer sind, werden Ihnen entsprechende Datenbankberechtigungen gewährt.

2. Sehen Sie sich die Benutzer der aktuellen Datenbank an

mysql> select host,user,password from user;
+-----------+------+-------------------------------------------+
| host      | user | password                                  |
+-----------+------+-------------------------------------------+
| localhost | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| 127.0.0.1 | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
+-----------+------+-------------------------------------------+
2 rows in set (0.04 sec)

3. Anweisungen zur Verwendung des GRANT-Befehls

Lass uns zuerst Schauen Sie sich ein Beispiel an, erstellen Sie einen Superuser-Test, der nur die lokale Anmeldung zulässt und die Erteilung von Berechtigungen an andere Benutzer ermöglicht. Das Passwort lautet 123456

GRANT-Befehlsbeschreibung:
GRANT ALL PRIVILEGES ON *.* TO test@'localhost' IDENTIFIED BY 'test@feihong.111' WITH GRANT OPTION;

ALL PRIVILEGES bedeutet alle Berechtigungen. Sie können auch die in Auswahl-, Aktualisierungs- und anderen Berechtigungen genannten Berechtigungen verwenden.

ON wird verwendet, um anzugeben, auf welche Bibliotheken und Tabellen die Berechtigungen abzielen. Der * vor

*.* dient zur Angabe des Datenbanknamens und der * hinten zur Angabe des Tabellennamens.

TO bedeutet, einem Benutzer Berechtigungen zu erteilen.

test@'localhost' bedeutet Feihong-Benutzer, auf @ folgt der eingeschränkte Host, der IP, IP-Segment, Domänenname und % sein kann, bedeutet irgendwo. Hinweis: In einigen Versionen ist die lokale Anmeldung nicht möglich. Wenn dieses Problem auftritt, fügen Sie einen lokalen Benutzer hinzu Es.

IDENTIFIED BY gibt das Anmeldekennwort des Benutzers an.

MIT ERTEILUNGSOPTION Diese Option gibt an, dass der Benutzer seine Berechtigungen anderen erteilen kann. Hinweis: Beim Erstellen eines Betriebsbenutzers wird häufig WITH GRANT OPTION nicht angegeben, was dazu führt, dass der Benutzer den GRANT-Befehl nicht zum Erstellen von Benutzern oder zum Autorisieren anderer Benutzer verwenden kann.

Hinweis: Sie können GRANT verwenden, um dem Benutzer wiederholt Berechtigungen hinzuzufügen, und die Berechtigungen werden überlagert. Wenn Sie beispielsweise zuerst eine Auswahlberechtigung für den Benutzer und dann eine Einfügeberechtigung für den Benutzer hinzufügen, Dann hat der Benutzer sowohl die Berechtigung zum Auswählen als auch zum Einfügen.

2. Überprüfen Sie die Berechtigungen des Benutzers

3. Löschen Sie den Benutzer
show grants for 'root'@'localhost'

Um einen Benutzer zu löschen, sollten Sie nicht nur den Namen des Benutzers löschen, sondern auch den Berechtigungen, die der Benutzer hat.

Achten Sie darauf, DELETE nicht zum direkten Löschen eines Benutzers zu verwenden, da die Berechtigungen des Benutzers nach dem Löschen mit DELETE nicht gelöscht werden und die vorherigen Berechtigungen geerbt werden, wenn ein neuer Benutzer mit demselben Namen erstellt wird. Der richtige Weg besteht darin, den Benutzer mit dem Befehl DROP USER zu löschen. Um beispielsweise den Benutzer „webuser“@„192.168.100.%“ zu löschen, verwenden Sie den folgenden Befehl:

4. Ändern Sie das Kontokennwort
drop user 'user'@'192.168.100.%';  
drop user 'user'@'%'

legen Sie das Kennwort für „Kontoname“ fest@‘%‘=password(‘neues Passwort‘);

Das Obige ist der Inhalt von MySQL Advanced Seventeen – MySQL-Kontoberechtigungen. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn