Heim  >  Artikel  >  Datenbank  >  Ausführliche Erläuterung der Beispiele für die Verwaltung von MySQL-Benutzerrechten

Ausführliche Erläuterung der Beispiele für die Verwaltung von MySQL-Benutzerrechten

怪我咯
怪我咯Original
2017-07-05 11:17:251445Durchsuche

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

Benutzerautorisierung

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:

http://dev.mysql.com/doc/refman/5.7/en/privileges-provided .html


2. Berechtigungen aktualisieren

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 Datenbanken

und 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> Installation

Verzeichnis 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!

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