MySQL ist ein gängiges relationales Datenbankverwaltungssystem, mit dem große Datenmengen gespeichert und verwaltet werden können. In MySQL müssen Administratoren verschiedenen Benutzern unterschiedliche Berechtigungen zuweisen, damit diese unterschiedliche Vorgänge für unterschiedliche Datenbanken und Tabellen ausführen können. In diesem Artikel erfahren Sie, wie Sie Benutzern unterschiedliche MySQL-Berechtigungen zuweisen.
Geben Sie den folgenden Befehl in die Befehlszeilenschnittstelle ein, um sich bei MySQL anzumelden:
mysql -u root -p
Unter diesen wird die Option „-u“ verwendet, um den zu verwendenden Benutzernamen anzugeben, und „ „root“ ist der Administrator-Benutzername; die Option „-p“ weist MySQL an, vom Benutzer die Eingabe eines Passworts für die Anmeldung zu verlangen. Wenn Sie sich bei MySQL anmelden, müssen Sie das richtige Passwort angeben.
Verwenden Sie den folgenden Befehl, um einen neuen Benutzer zu erstellen:
CREATE USER 'new_user'@'localhost' IDENTIFIED BY 'password';
Wobei „new_user“ der Benutzername des neuen Benutzers ist, müssen Sie dem neuen Benutzer stattdessen einen leicht zu merkenden Benutzernamen zuweisen einen zufälligen Namen zu verwenden. „localhost“ bedeutet, die IP-Adresse dieses Benutzers nur auf localhost zu beschränken. Wenn Sie möchten, dass dieser Benutzer von einem externen Host aus auf die Datenbank zugreift, verwenden Sie stattdessen das Symbol „%“. Schließlich ist „Passwort“ das Passwort des neuen Benutzers, und für den neuen Benutzer muss ein sicheres Passwort festgelegt werden.
Das Zuweisen von Berechtigungen umfasst zwei Aspekte: Zum einen werden Berechtigungen für die Datenbanken und Tabellen zugewiesen, die der Benutzer bedienen kann, und zum anderen werden dem Benutzer globale Berechtigungen von MySQL Server zugewiesen.
Gewähren Sie Benutzern bestimmte Datenbank- und Tabellenberechtigungen:
GRANT 权限 ON 数据库名.数据表名 TO 'user_name'@'访问来源';
Unter diesen beziehen sich „Berechtigungen“ auf die spezifischen gewährten Betriebsberechtigungen, wie z. B. AUSWÄHLEN, EINFÜGEN, LÖSCHEN, AKTUALISIEREN, ALLE PRIVILEGES usw.; „Benutzername“ ist der Benutzer wem Berechtigungen zugewiesen werden sollen Name; „Zugriffsquelle“ bezieht sich auf die Zugriffsquelle des Benutzers. „localhost“ bedeutet beispielsweise, dass es sich auf dem lokalen Host befindet, und das Symbol „%“ bedeutet, dass der Benutzer von jeder Adresse aus auf die Ressource zugreifen kann.
Beispiele für Anweisungen zum Erteilen von Berechtigungen für Datenbankoperationen:
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON test_db.* TO 'new_user'@'localhost';
Beispiele für Anweisungen zum Erteilen von Berechtigungen für Tabellenoperationen:
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON test_db.test_table TO 'new_user'@'localhost';
Gewähren globaler Berechtigungen für Benutzer auf MySQL Server:
GRANT 权限 ON *.* TO 'user_name'@'access_mode';
Wobei „.“ für globale Berechtigungen steht. Verwenden Sie beispielsweise den folgenden Befehl, um einem neuen Benutzer alle Berechtigungen für alle Datenbanken und Tabellen zu erteilen:
GRANT ALL PRIVILEGES ON *.* TO 'new_user'@'localhost';
Ähnlich kann ein Administrator, wenn er die Berechtigungen eines Benutzers widerrufen muss, die folgende Anweisung verwenden:
REVOKE 权限 ON 数据库名.数据表名 FROM 'user_name'@'访问来源';
Die Syntax ist dieselbe wie bei GRANT. Der folgende Befehl entzieht beispielsweise dem Benutzer „new_user“ alle globalen Berechtigungen:
REVOKE ALL PRIVILEGES ON *.* FROM 'new_user'@'localhost';
Zusammenfassung
In MySQL müssen Administratoren verschiedenen Benutzern unterschiedliche Berechtigungen zuweisen, damit diese unterschiedliche Vorgänge in verschiedenen Datenbanken und Tabellen ausführen können. Mithilfe der GRANT- und REVOKE-Anweisungen können Administratoren steuern, welche Aktionen Benutzer ausführen können.
Das obige ist der detaillierte Inhalt vonSo weisen Sie Benutzern in MySQL unterschiedliche Berechtigungen zu. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!