Heim >Datenbank >MySQL-Tutorial >Einführung in Kenntnisse im Zusammenhang mit der MySQL-Benutzerverwaltung
Derzeit verwendete Benutzer und Host:
mysql> select USER(); +----------------+ | USER() | +----------------+ | root@localhost | +----------------+ 1 row in set (0.00 sec)
Benutzer hinzufügen
Frühere Versionen von MySQL5 haben INSERT direkt verwendet, um MySQL-Benutzer in die MySQL-Tabelle einzufügen. Dieser Vorgang kann nach MySQL5 nicht mehr ausgeführt werden
mysql> insert into mysql.user(Host,User,Password) values('localhost','test_user',password('123123')); ERROR 1062 (23000): Duplicate entry 'localhost-test_user' for key 'PRIMARY'Benutzer hinzufügen {Erteilen Sie dem Benutzer die Berechtigung, die Datentabelle anzugeben. [Verwenden Sie den GRANT-Befehl, um den Benutzer entsprechend zu autorisieren.]}
mysql> GRANT all privileges ON table1.* TO 'test_user'@'localhost' IDENTIFIED BY '123123' WITH GRANT OPTION; Query OK, 0 rows affected (0.02 sec)IDENTIFIED BY Geben Sie das Anmeldekennwort des Benutzers anALLE PRIVILEGES bedeutet alle Berechtigungen. Sie können auch Auswahl-, Aktualisierungs- und andere Berechtigungen verwenden *. Das * vorne wird verwendet, um den Datenbanknamen anzugeben, und das * hinten wird verwendet, um den Tabellennamen anzugeben TO bedeutet, einem Benutzer Berechtigungen zu erteilen. ON wird verwendet, um anzugeben, für welche Bibliotheken und Tabellen die Berechtigungen gelten. 'test_user'@'localhost' steht für den test_user-Benutzer, @. gefolgt vom eingeschränkten Host, der IP, IP-Segment, Domänenname und % sein kann, % bedeutet überall MIT GRANT OPTION Diese Option bedeutet, dass der Benutzer seine eigenen Berechtigungen anderen autorisieren kann Die Systemberechtigungstabelle muss aktualisiert werden [Flush-Berechtigung] Der Benutzer kann sich anmelden, um wirksam zu werden
mysql> flush privileges;Benutzer löschen
mysql> drop user 'test_user'@'localhost';Berechtigungen des aktuellen Benutzers anzeigen
mysql> SHOW GRANTS; +----------------------------------------------------------------------------------------------------------------------------------------+ | Grants for root@localhost | +----------------------------------------------------------------------------------------------------------------------------------------+ | GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '\*E56A114692FE0DE073F9A1DD68A00EEB9703F3F1' WITH GRANT OPTION | | GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION | +----------------------------------------------------------------------------------------------------------------------------------------+Berechtigungen eines Benutzers anzeigen
mysql> show grants for 'test_user'@'localhost' +------------------------------------------------------------------------------------------------------------+ | Grants for test_user@localhost | +------------------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'test_user'@'localhost' IDENTIFIED BY PASSWORD '\*E56A114692FE0DE073F9A1DD68A00EEB9703F3F1' | | GRANT ALL PRIVILEGES ON table1.* TO 'test_user'@'localhost' WITH GRANT OPTION | +------------------------------------------------------------------------------------------------------------+Konto umbenennen
mysql> rename user 'test_user'@'localhost' to 'bb'@'localhost';Passwort ändern1. Verwenden Sie den Befehl „Passwort festlegen“
mysql> SET PASSWORD FOR 'test_user'@'localhost' = PASSWORD('123456');2. Verwenden Sie mysqladmin [geben Sie das bin-Verzeichnis ein] Bemerkungen: {Format: mysqladmin -u Benutzername -p altes Passwort Passwort neues Passwort]
/usr/bin$ mysqladmin -utest_user -p123456 password 123123 mysqladmin: Can't turn off logging; error: 'Access denied; you need (at least one of) the SUPER privilege(s) for this operation'3. Verwenden Sie update, um die Benutzertabelle zu bearbeiten direkt
mysql> use mysql Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> update user set PASSWORD = PASSWORD('123123') where user = 'test_user'; Query OK, 1 row affected (0.04 sec) Rows matched: 1 Changed: 1 Warnings: 0Empfohlenes Tutorial: „
MySQL-Tutorial“
Das obige ist der detaillierte Inhalt vonEinführung in Kenntnisse im Zusammenhang mit der MySQL-Benutzerverwaltung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!