Maison >base de données >tutoriel mysql >Pourquoi l'accès de mon utilisateur non root à MySQL est-il refusé et comment puis-je y remédier ?
Accès MySQL refusé pour un utilisateur non root
Le problème que vous rencontrez lorsque vous tentez de vous connecter en tant qu'utilisateur non root provient des autorisations insuffisantes accordées à l’utilisateur. Bien que les étapes que vous avez décrites pour la création d'utilisateurs semblent correctes, l'octroi de tous les privilèges sur toutes les bases de données constitue un problème de sécurité.
Solution
Au lieu d'accorder tous les privilèges à un non-utilisateur utilisateur root, utilisez des autorisations plus spécifiques. Utilisez la syntaxe suivante :
GRANT <privileges> ON database.* TO 'user'@'localhost' IDENTIFIED BY 'password';
Par exemple, pour donner un exemple, accordez des privilèges spécifiques pour la manipulation des données :
GRANT INSERT, SELECT, DELETE, UPDATE ON database.* TO 'user'@'localhost' IDENTIFIED BY 'password';
Informations supplémentaires
Pour afficher les privilèges accordés aux utilisateurs, exécutez la requête suivante en tant qu'utilisateur "root":
select Host, User from mysql.user;
Cela fournira un aperçu des privilèges accordés aux différents utilisateurs.
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!