Maison  >  Article  >  base de données  >  Pourquoi est-ce que j'obtiens « Accès refusé » pour l'utilisateur MySQL « root » sur Ubuntu 16.04 ?

Pourquoi est-ce que j'obtiens « Accès refusé » pour l'utilisateur MySQL « root » sur Ubuntu 16.04 ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-02 12:56:30306parcourir

Why Am I Getting

Accès refusé pour l'utilisateur MySQL 'root' utilisant Ubuntu 16.04

Lors d'une tentative de connexion à une base de données MySQL à partir d'un serveur Web sur Ubuntu 16.04 , les utilisateurs peuvent rencontrer l'erreur suivante :

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

Ce problème se produit car, dans MySQL 5.7, le mécanisme d'authentification par défaut a changé et l'utilisateur root n'est plus accessible sans privilèges élevés.

Solution :

Pour résoudre cette erreur, les utilisateurs doivent créer un nouvel utilisateur MySQL avec les privilèges nécessaires au lieu d'utiliser l'utilisateur root. Les étapes suivantes décrivent le processus :

  1. Créer un nouvel utilisateur MySQL :
sudo mysql -u root -p
Entrez votre mot de passe root lorsque vous y êtes invité.
CREATE USER new_user@localhost IDENTIFIED BY 'new_password';
Remplacez 'new_user' par le nom d'utilisateur souhaité et 'new_password' par un mot de passe fort.
  1. Accorder des privilèges au nouvel utilisateur :
GRANT ALL PRIVILEGES ON *.* TO new_user@localhost;
Cela accorde au nouvel utilisateur un accès complet à toutes les bases de données et tables.
  1. Configurer le serveur Web pour utiliser un nouvel utilisateur :

Modifiez le code PHP dans la question fournie pour utiliser les informations d'identification de l'utilisateur nouvellement créées, en remplaçant « root » par « new_user » et « root » par « new_password ».

  1. Flush Privilèges :
FLUSH PRIVILEGES;
Cela met à jour le tableau des privilèges avec les modifications apportées.
  1. Quitter MySQL :
EXIT;

En suivant ces étapes, les utilisateurs peuvent se connecter à leur base de données MySQL à partir d'un serveur Web sur Ubuntu 16.04 sans rencontrer l'erreur « Accès refusé ».

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