Maison > Article > base de données > Pourquoi est-ce que j'obtiens un « Accès refusé » lors de la connexion à MySQL malgré la création d'un nouvel utilisateur avec des privilèges ?
MySQL - Accès refusé pour l'utilisateur
Malgré la création d'un nouvel utilisateur avec les privilèges nécessaires, vous pouvez rencontrer l'erreur « Accès refusé » lorsque tentative de connexion à la base de données. Ce problème est dû à une instruction d'octroi incorrecte.
Le message d'erreur indique que l'utilisateur 'servname_shb'@'localhost' n'a pas accès à la base de données. Pour remédier à ce problème, utilisez l'instruction d'octroi suivante :
<code class="sql">GRANT ALL ON *.* TO 'servname_shb'@'localhost';</code>
Cela accorde à l'utilisateur spécifié un accès complet à toutes les bases de données et tables de l'hôte local. Alternativement, vous pouvez limiter l'accès aux composants requis uniquement en spécifiant des bases de données ou des tables spécifiques dans la déclaration d'autorisation.
Par exemple, pour accorder l'accès à la base de données 'servname_shbusers' uniquement :
<code class="sql">GRANT ALL ON servname_shbusers TO 'servname_shb'@'localhost';</code>
Pour sécuriser davantage la base de données, il est recommandé de limiter l'accès de l'utilisateur aux seuls privilèges nécessaires. L'utilisation de l'instruction GRANT avec des privilèges spécifiques vous permet de restreindre la capacité de l'utilisateur à effectuer certaines actions, telles que la création, la modification ou la suppression de données.
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!