Heim > Datenbank > MySQL-Tutorial > So erstellen Sie neue Berechtigungen und legen ein Passwort in MySQL fest

So erstellen Sie neue Berechtigungen und legen ein Passwort in MySQL fest

藏色散人
Freigeben: 2020-10-23 09:48:03
Original
3052 Leute haben es durchsucht

So legen Sie ein Passwort für neue Berechtigungen in MySQL fest: Erstellen Sie zunächst einen Benutzer mit dem Befehl CREATE USER. Anschließend autorisieren Sie ihn mit dem Befehl GRANT. Anschließend legen Sie das Benutzerpasswort mit dem Befehl SET PASSWORD fest. 🔜

Gastgeber: Geben Sie den Host an, auf dem sich der Benutzer anmelden kann. Wenn es sich um einen lokalen Benutzer handelt, kann localhost verwendet werden. Wenn Sie möchten, dass sich der Benutzer von einem beliebigen Remote-Host aus anmeldet, können Sie den Platzhalter %

password verwenden: Das Anmeldekennwort des Benutzers . Das Passwort kann leer sein. Wenn es leer ist, kann sich der Benutzer ohne Passwort am Server anmelden. Beispiel: So erstellen Sie neue Berechtigungen und legen ein Passwort in MySQL fest

CREATE USER 'username'@'host' IDENTIFIED BY 'password';
Nach dem Login kopieren
Berechtigungen wie SELECT, INSERT, UPDATE usw., wenn Sie Berechtigungen erteilen möchten, verwenden Sie ALL

Datenbankname: Datenbankname Tabellenname: Tabellenname Wenn Sie dem Benutzer entsprechende Betriebsberechtigungen für alle Datenbanken und Tabellen erteilen möchten , Sie können * verwenden, um es anzuzeigen, z. B. *.*

Beispiel:

CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '';
CREATE USER 'pig'@'%';
Nach dem Login kopieren

Hinweis:

Ein mit dem obigen Befehl autorisierter Benutzer kann keine anderen Benutzer autorisieren Folgender Befehl:

GRANT privileges ON databasename.tablename TO 'username'@'host'
Nach dem Login kopieren

3. Benutzerpasswort festlegen und ändern

Befehl:

GRANT SELECT, INSERT ON test.user TO 'pig'@'%';
GRANT ALL ON *.* TO 'pig'@'%';
GRANT ALL ON maindataplus.* TO 'pig'@'%';
Nach dem Login kopieren

Wenn Sie der aktuell angemeldete Benutzer sind:

GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;
Nach dem Login kopieren

Beispiel:

SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
Nach dem Login kopieren

IV. Benutzerberechtigungen widerrufen

Befehl:

SET PASSWORD = PASSWORD("newpassword");
Nach dem Login kopieren

Beschreibung:

Berechtigung, Datenbankname, Tabellenname: das Gleiche wie der Autorisierungsteil

Beispiel:

SET PASSWORD FOR 'pig'@'%' = PASSWORD("123456");
Nach dem Login kopieren

Hinweis:

Wenn Sie angeben, dass Benutzer „pig“@„%“ autorisiert ist, sieht es so aus (oder ähnlich). ): GRANT SELECT ON test.user TO 'pig'@'%', dann REVOKE SELECT ON *.* FROM 'pig'@' verwenden. Der Befehl %' kann die SELECT-Operation des Benutzers für die Benutzertabelle in der Testdatenbank nicht rückgängig machen . Wenn die Autorisierung hingegen GRANT SELECT ON *.* TO 'pig'@'%'; verwendet, kann der Befehl REVOKE SELECT ON test.user FROM 'pig'@'%'; den Zugriff des Benutzers nicht widerrufen Benutzertabelle in der Testdatenbank.

Detaillierte Informationen können mit dem Befehl SHOW GRANTS FOR 'pig'@'%'; angezeigt werden. 5. Benutzer löschen Beim Anmelden bei MySQL habe ich festgestellt, dass ein Fehler gemeldet wird, selbst wenn das Kennwort korrekt ist. Schließlich habe ich festgestellt, dass ich mich direkt anmelden kann indem Sie „mysql -uweicheng“ verwenden, ohne ein Passwort einzugeben.

Später lautet der Grund für die Abfrage der Daten: Es sollten leere Benutzer in der Datenbank vorhanden sein. Wenn ja, verwenden Sie

REVOKE privilege ON databasename.tablename FROM 'username'@'host';
Nach dem Login kopieren

, um zu überprüfen, ob welche vorhanden sind, und verwenden Sie dann

REVOKE SELECT ON *.* FROM 'pig'@'%';
Nach dem Login kopieren

, um die überflüssigen leeren Konten zu löschen Verwenden Sie

DROP USER 'username'@'host';
Nach dem Login kopieren

, um die Berechtigungstabelle neu zu laden. Verwenden Sie abschließend

select * from mysql.user where user='';
Nach dem Login kopieren

, um den MySQL-Dienst neu zu starten, und das Problem ist gelöst.

Tipp:

1. Denken Sie unbedingt daran, den MySQL-Dienst neu zu starten, da er sonst nicht wirksam wird, da ich MSYQL nicht neu gestartet habe!

2. Die Benutzertabelle von msyql befindet sich in der Benutzertabelle in der MySQL-Datenbank. Die Hauptfelder sind Host, Benutzer, Passwort usw., die für die Verwaltung durch MySQL verwendet werden.

MySQL-Aktualisierungsberechtigungsbefehl: FLUSH PRIVILEGES; (wird im Allgemeinen verwendet, nachdem die Datenbankbenutzerinformationen aktualisiert wurden)

Es gibt eine andere Möglichkeit, nämlich den MySQL-Server neu zu starten

Das obige ist der detaillierte Inhalt vonSo erstellen Sie neue Berechtigungen und legen ein Passwort in MySQL fest. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage