Heim > Datenbank > MySQL-Tutorial > Hauptteil

Warum erhalte ich unter Ubuntu 16.04 die Meldung „Zugriff verweigert' für den MySQL-Benutzer „root'?

Linda Hamilton
Freigeben: 2024-11-02 12:56:30
Original
305 Leute haben es durchsucht

Why Am I Getting

Zugriff für MySQL-Benutzer „root“ unter Ubuntu 16.04 verweigert

Beim Versuch, von einem Webserver unter Ubuntu 16.04 eine Verbindung zu einer MySQL-Datenbank herzustellen , können Benutzer auf den folgenden Fehler stoßen:

SQLSTATE[HY000] [1698] Access denied for user 'root'@'localhost'
Nach dem Login kopieren

Dieses Problem tritt auf, weil sich in MySQL 5.7 der Standardauthentifizierungsmechanismus geändert hat und auf den Root-Benutzer nicht mehr ohne erhöhte Berechtigungen zugegriffen werden kann.

Lösung:

Um diesen Fehler zu beheben, müssen Benutzer einen neuen MySQL-Benutzer mit den erforderlichen Berechtigungen erstellen, anstatt den Root-Benutzer zu verwenden. Die folgenden Schritte beschreiben den Prozess:

  1. Erstellen Sie einen neuen MySQL-Benutzer:
sudo mysql -u root -p
Nach dem Login kopieren
Geben Sie Ihr Root-Passwort ein, wenn Sie dazu aufgefordert werden.
CREATE USER new_user@localhost IDENTIFIED BY 'new_password';
Nach dem Login kopieren
Ersetzen Sie „new_user“ durch den gewünschten Benutzernamen und „new_password“ durch ein sicheres Passwort.
  1. Gewähren Sie dem neuen Benutzer Berechtigungen:
GRANT ALL PRIVILEGES ON *.* TO new_user@localhost;
Nach dem Login kopieren
Dies gewährt dem neuen Benutzer vollen Zugriff auf alle Datenbanken und Tabellen.
  1. Konfigurieren Sie den Webserver für die Verwendung eines neuen Benutzers:

Ändern Sie den PHP-Code in der bereitgestellten Frage, um die neu erstellten Benutzeranmeldeinformationen zu verwenden, und ersetzen Sie „root“ durch „new_user“ und „root“ durch „new_password“.

  1. Flush-Berechtigungen:
FLUSH PRIVILEGES;
Nach dem Login kopieren
Dadurch wird die Berechtigungstabelle mit den vorgenommenen Änderungen aktualisiert.
  1. MySQL beenden:
EXIT;
Nach dem Login kopieren

Durch Befolgen dieser Schritte können Benutzer von einem Webserver unter Ubuntu 16.04 aus eine Verbindung zu ihrer MySQL-Datenbank herstellen, ohne dass der Fehler „Zugriff verweigert“ auftritt.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich unter Ubuntu 16.04 die Meldung „Zugriff verweigert' für den MySQL-Benutzer „root'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!