Maison > base de données > tutoriel mysql > Introduction aux connaissances liées à la gestion des utilisateurs Mysql

Introduction aux connaissances liées à la gestion des utilisateurs Mysql

藏色散人
Libérer: 2020-05-12 16:24:25
avant
1937 Les gens l'ont consulté

Utilisateur et hôte actuellement utilisés :

mysql> select USER();
+----------------+
| USER()         |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.00 sec)
Copier après la connexion

Ajouter un utilisateur

Les versions précédentes de mysql5 utilisaient directement INSERT pour insérer les utilisateurs mysql dans la table mysql. Cette opération ne peut pas être effectuée après mysql5

.
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'
Copier après la connexion

Ajouter un utilisateur {Accorder à l'utilisateur l'autorisation de spécifier la table de données [Utilisez la commande GRANT pour autoriser l'utilisateur en conséquence]}

mysql> GRANT all privileges ON table1.* TO 
'test_user'@'localhost' IDENTIFIED BY '123123' WITH GRANT OPTION;
Query OK, 0 rows affected (0.02 sec)
Copier après la connexion

IDENTIFIÉ PAR Spécifiez le mot de passe de connexion de l'utilisateur

TOUS LES PRIVILÈGES signifie toutes les autorisations, vous pouvez également utiliser les autorisations de sélection, de mise à jour et autres

* Le * devant est utilisé pour spécifier le nom de la base de données, et le * à l'arrière est utilisé pour spécifier le nom de la table <🎜. >

TO signifie accorder des autorisations à un utilisateur

ON est utilisé pour spécifier à quelles bibliothèques et tables les autorisations sont destinées

'test_user'@'localhost' représente l'utilisateur test_user, @. est suivi de l'hôte restreint, qui peut être IP, segment IP, nom de domaine et % , % signifie n'importe où

AVEC OPTION D'ACCORD Cette option signifie que l'utilisateur peut autoriser ses propres autorisations à d'autres

Besoin d'actualiser la table des autorisations du système [privilège de vidage] Ceci L'utilisateur peut se connecter pour prendre effet

mysql> flush privileges;
Copier après la connexion

Supprimer l'utilisateur

mysql> drop user &#39;test_user&#39;@&#39;localhost&#39;;
Copier après la connexion

Afficher les autorisations de l'utilisateur actuel

mysql> SHOW GRANTS;
+----------------------------------------------------------------------------------------------------------------------------------------+
| Grants for root@localhost                                                                                                              |
+----------------------------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO &#39;root&#39;@&#39;localhost&#39; IDENTIFIED BY PASSWORD &#39;\*E56A114692FE0DE073F9A1DD68A00EEB9703F3F1&#39; WITH GRANT OPTION |
| GRANT PROXY ON &#39;&#39;@&#39;&#39; TO &#39;root&#39;@&#39;localhost&#39; WITH GRANT OPTION                                                                           |
+----------------------------------------------------------------------------------------------------------------------------------------+
Copier après la connexion

Afficher les autorisations d'un utilisateur

mysql> show grants for &#39;test_user&#39;@&#39;localhost&#39;
+------------------------------------------------------------------------------------------------------------+
| Grants for test_user@localhost                                                                                   |
+------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO &#39;test_user&#39;@&#39;localhost&#39; IDENTIFIED BY PASSWORD &#39;\*E56A114692FE0DE073F9A1DD68A00EEB9703F3F1&#39; |
| GRANT ALL PRIVILEGES ON table1.* TO &#39;test_user&#39;@&#39;localhost&#39; WITH GRANT OPTION                                 |
+------------------------------------------------------------------------------------------------------------+
Copier après la connexion

Renommer le compte

mysql> rename user &#39;test_user&#39;@&#39;localhost&#39; to &#39;bb&#39;@&#39;localhost&#39;;
Copier après la connexion

Changer le mot de passe

1 Utilisez la commande set password

mysql> SET PASSWORD FOR &#39;test_user&#39;@&#39;localhost&#39; = PASSWORD(&#39;123456&#39;);
Copier après la connexion
<. 🎜>2. Utilisez mysqladmin [entrez dans le répertoire bin]

Remarques : {Format : mysqladmin -u Nom d'utilisateur -p ancien mot de passe mot de passe nouveau mot de passe]

/usr/bin$ mysqladmin -utest_user -p123456 password 123123
mysqladmin: Can&#39;t turn off logging; error: &#39;Access denied; you need (at least one of) the SUPER privilege(s) for this operation&#39;
Copier après la connexion

Utilisez la mise à jour pour modifier l'utilisateur. table directement

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(&#39;123123&#39;) where user = &#39;test_user&#39;;
Query OK, 1 row affected (0.04 sec)
Rows matched: 1  Changed: 1  Warnings: 0
Copier après la connexion

Tutoriel recommandé : "

Tutoriel MySQL

"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:cnblogs.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal