73 votes

Comment modifier les privilèges d'un utilisateur MySQL déjà créé ?

Je comprends comment créer un nouvel utilisateur avec des privilèges, mais quelle est la manière correcte de modifier les privilèges des utilisateurs déjà créés ?

Nous effectuons un audit de la base de données et certains utilisateurs ont beaucoup plus d'accès que nécessaire. De plus, je ne connais pas les mots de passe de la plupart de ces utilisateurs MySQL, et je ne veux pas les supprimer et en créer de nouveaux.

119voto

Warner Points 23292

Pour lister les utilisateurs :

select user,host from mysql.user;

Pour montrer les privilèges :

show grants for 'user'@'host';

Pour changer les privilèges, il faut d'abord révoquer. Par exemple :

revoke all privileges on *.* from 'user'@'host';

Accordez ensuite les privilèges appropriés comme vous le souhaitez :

grant SELECT,INSERT,UPDATE,DELETE ON `db`.* TO 'user'@'host';

Enfin, la chasse d'eau :

flush privileges;

La documentation MySQL est excellente :

https://dev.mysql.com/doc/refman/8.0/en/access-control.html

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X