Heim >Datenbank >MySQL-Tutorial >Wie behebe ich den Fehler „mysqli_connect: dem Client unbekannte Authentifizierungsmethode [caching_sha2_password]' in PHP?
Abschwächung von „mysqli_connect: dem Client unbekannte Authentifizierungsmethode [caching_sha2_password]“ in PHP
Bei Verwendung von mysqli_connect von MySQL zur Authentifizierung bei einer lokalen Datenbank , könnten Sie auf den rätselhaften Fehler „mysqli_connect(): The server angeforderte Authentifizierungsmethode ist unbekannt“ stoßen der Client [caching_sha2_password].“ Dieser Fehler entsteht durch eine Diskrepanz zwischen dem vom Server verwendeten und dem vom Client erwarteten Authentifizierungs-Plugin.
Die INI-Datei des MySQL-Servers gibt vor, welches Standard-Authentifizierungs-Plugin für Serververbindungen verwendet wird. Standardmäßig ist diese Einstellung auf „caching_sha2_password“ konfiguriert, was angibt, dass der Server die Authentifizierungsmethode „caching_sha2_password“ bevorzugt. In Ihrem Fall wurde Ihr Server entsprechend konfiguriert.
Umgekehrt versucht Ihr PHP-Code, eine Verbindung mithilfe älterer Authentifizierungsmethoden wie der Methode „mysql_native_password“ herzustellen. Diese Nichtübereinstimmung führt zum Authentifizierungsfehler und führt zu dem oben genannten Fehler.
Lösung
Um dieses Problem zu beheben, können Sie die vom PHP-Code verwendete Authentifizierungsmethode so ändern, dass sie übereinstimmt die Standardeinstellung des Servers. Alternativ können Sie die INI-Datei des MySQL-Servers ändern, um ein mit dem PHP-Code kompatibles Authentifizierungs-Plugin anzugeben. Hier sind einige mögliche Lösungen:
Aktivieren Sie das mysql_native_password-Plugin auf dem MySQL-Server:
Ändern Sie den PHP-Code, um das caching_sha2_password-Plugin zu verwenden:
Alternativ können Sie die Authentifizierungsmethode des MySQL-Benutzers mithilfe von SQL-Befehlen auf mysql_native_password umstellen:
Bestehenden Benutzer ändern :
Neuen Benutzer mit mysql_native_password erstellen:
Durch die Implementierung dieser Lösungen können Sie die vom MySQL-Server und dem PHP-Client verwendeten Authentifizierungsmethoden in Einklang bringen , sodass Sie erfolgreich Verbindungen zu Ihrer Datenbank herstellen können.
Das obige ist der detaillierte Inhalt vonWie behebe ich den Fehler „mysqli_connect: dem Client unbekannte Authentifizierungsmethode [caching_sha2_password]' in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!