Maison > base de données > tutoriel mysql > le corps du texte

Comment créer de nouvelles autorisations et définir un mot de passe dans MySQL

藏色散人
Libérer: 2020-10-23 09:48:03
original
3023 Les gens l'ont consulté

Comment définir un mot de passe pour les nouvelles autorisations dans MySQL : Créez d'abord un utilisateur via la commande CREATE USER ; puis utilisez la commande GRANT pour autoriser, enfin, définissez et modifiez le mot de passe de l'utilisateur via la commande SET PASSWORD.

Comment créer de nouvelles autorisations et définir un mot de passe dans MySQL

Recommandé : "Tutoriel vidéo MySQL"

Utilisateur et autorisation de création MySQL

1. Créer un utilisateur

Commande :

CREATE USER 'username'@'host' IDENTIFIED BY 'password';
Copier après la connexion

Description :

username : le nom d'utilisateur que vous allez créer

host : précisez l'hôte sur lequel l'utilisateur peut se connecter dans , s'il s'agit d'un utilisateur local, vous pouvez utiliser localhost. Si vous souhaitez que l'utilisateur se connecte depuis n'importe quel hôte distant, vous pouvez utiliser le caractère générique %

mot de passe : le mot de passe de connexion de l'utilisateur peut être. vide. S'il est vide, l'utilisateur peut Aucun mot de passe n'est requis pour se connecter au serveur

Exemple :

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'@'%';
Copier après la connexion

2. Autorisation :

Commande :

GRANT privileges ON databasename.tablename TO 'username'@'host'
Copier après la connexion

Description :

privilèges : autorisations d'opération utilisateur, telles que SELECT, INSERT, UPDATE, etc. Si vous souhaitez accorder toutes les autorisations, utilisez ALL

databasename : nom de la base de données

tablename : nom de la table. Si vous souhaitez accorder à l'utilisateur l'accès à toutes les bases de données, les autorisations d'opération correspondantes de la table de somme peuvent être représentées par *, tel que *.*

Exemple :

GRANT SELECT, INSERT ON test.user TO 'pig'@'%';
GRANT ALL ON *.* TO 'pig'@'%';
GRANT ALL ON maindataplus.* TO 'pig'@'%';
Copier après la connexion

Remarque :

Les utilisateurs autorisés avec la commande ci-dessus ne peuvent pas autoriser d'autres utilisateurs. Si vous souhaitez que l'utilisateur soit autorisé, utilisez la commande suivante :

GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;
Copier après la connexion

3. Définissez et modifiez l'utilisateur. mot de passe

commande :

SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
Copier après la connexion

Si vous êtes l'utilisateur actuellement connecté, utilisez :

SET PASSWORD = PASSWORD("newpassword");
Copier après la connexion

Exemple :

SET PASSWORD FOR 'pig'@'%' = PASSWORD("123456");
Copier après la connexion

Révoquer les autorisations de l'utilisateur<🎜. >

Commande :

REVOKE privilege ON databasename.tablename FROM &#39;username&#39;@&#39;host&#39;;
Copier après la connexion

Instructions :

privilège, nom de base de données, nom de table : même autorisation Partielle

Exemple :

REVOKE SELECT ON *.* FROM &#39;pig&#39;@&#39;%&#39;;
Copier après la connexion

Remarque :

Si vous autorisez l'utilisateur 'pig'@'%' comme ceci (ou similaire) : GRANT SELECT ON test.user TO 'pig'@'%', puis en utilisant REVOKE SELECT ON *.* FROM 'pig'@ La commande '%' ne peut pas annuler l'opération SELECT de l'utilisateur sur la table utilisateur dans la base de données de test. Au contraire, si l'autorisation utilise GRANT SELECT ON *.* TO 'pig'@'%';, alors la commande REVOKE SELECT ON test.user FROM 'pig'@'%'; table utilisateur dans la base de données de test. Sélectionnez l'autorisation.

Des informations détaillées peuvent être consultées avec la commande SHOW SUBVENTIONS FOR 'pig'@'%';.

5. Supprimer l'utilisateur

Commande :

DROP USER &#39;username&#39;@&#39;host&#39;;
Copier après la connexion

Après avoir installé la version MySQL 5.6 dans Centos7 pendant le développement aujourd'hui, j'ai créé un nouveau compte Weicheng dans le tableau et défini un mot de passe. Cependant, lorsque j'ai utilisé le compte Weicheng pour me connecter à MySQL, j'ai découvert que si j'utilisais "mysql -uweicheng -p" pour me connecter, une erreur serait même signalée. si le mot de passe était correct, je ne pouvais pas me connecter. Finalement, j'ai découvert que je pouvais utiliser directement " mysql -uweicheng" Vous pouvez vous connecter sans saisir de mot de passe.

Plus tard, la raison de l'interrogation des données est la suivante : il devrait y avoir des utilisateurs vides dans la base de données. Si c'est le cas, utilisez

select * from mysql.user where user=&#39;&#39;;
Copier après la connexion

pour vérifier s'il y en a, puis utilisez

use mysql;
delete from user where user = &#39;&#39;;
Copier après la connexion
.

pour supprimer les comptes vides supplémentaires. Ensuite, utilisez

flush privileges;­
Copier après la connexion

pour recharger la table des autorisations, et enfin utilisez

service mysqld restart
Copier après la connexion
pour redémarrer le service mysql.

Astuce :

1. N'oubliez pas de redémarrer le service mysql, sinon cela ne prendra pas effet. Je n'ai pas pu résoudre le problème car je n'ai pas redémarré msyql !

2. La table utilisateur de msyql se trouve dans la table utilisateur de la base de données mysql. Les champs principaux sont l'hôte, l'utilisateur, le mot de passe, etc., qui sont utilisés comme tables principales pour la gestion de MySQL.

Commande d'autorisation d'actualisation mysql : FLUSH PRIVILEGES ; (généralement utilisée après la mise à jour des informations utilisateur de la base de données)

Une autre méthode consiste à redémarrer le serveur 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:php.cn
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