Maison  >  Article  >  base de données  >  Comment réparer l'erreur \"SQLSTATE[HY000] [1698] Accès refusé pour l'utilisateur \'root\'@\'localhost\'\" dans Ubuntu 16.04 ?

Comment réparer l'erreur \"SQLSTATE[HY000] [1698] Accès refusé pour l'utilisateur \'root\'@\'localhost\'\" dans Ubuntu 16.04 ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-01 12:11:29896parcourir

How to Fix

Dépannage "SQLSTATE[HY000] [1698] Accès refusé pour l'utilisateur 'root'@'localhost'" Erreur dans Ubuntu 16.04

Introduction :

Lorsque vous tentez d'accéder à une base de données MySQL depuis PHP ou phpMyAdmin, vous pouvez rencontrer l'erreur suivante :

SQLSTATE[HY000] [1698] Access denied for user 'root'@'localhost'

Cette erreur indique que l'utilisateur qui tente de se connecter à la base de données ne dispose pas des éléments nécessaires. privilèges.

Solution :

Une modification récente dans MySQL 5.7 empêche l'utilisateur root de se connecter à la base de données sans privilèges élevés. Pour résoudre ce problème, suivez ces étapes :

  1. Créer un nouvel utilisateur avec des privilèges :
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'localhost' WITH GRANT OPTION;
  1. Mettre à jour Votre code PHP :

Modifiez le code PHP pour vous connecter à l'aide des nouveaux identifiants utilisateur :

<code class="php">protected $name = 'newuser';
protected $pass = 'password';</code>
  1. Connectez-vous à l'aide de Sudo :

Si vous souhaitez continuer à utiliser l'utilisateur root, vous devrez élever vos privilèges en exécutant des commandes avec sudo :

<code class="sh">sudo mysql -u root</code>

Considérations supplémentaires :

  • Assurez-vous que le nouvel utilisateur dispose des privilèges requis pour les opérations de base de données que vous souhaitez effectuer.
  • Si vous rencontrez d'autres problèmes, consultez la documentation MySQL ou demandez de l'aide à MySQL. communauté.

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!

Déclaration:
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