Heim > Backend-Entwicklung > PHP-Tutorial > Warum kann ich mit der Legacy-Authentifizierung keine Verbindung zu MySQL 4.1 herstellen?

Warum kann ich mit der Legacy-Authentifizierung keine Verbindung zu MySQL 4.1 herstellen?

Patricia Arquette
Freigeben: 2024-11-03 19:27:29
Original
206 Leute haben es durchsucht

Why Can't I Connect to MySQL 4.1  Using Legacy Authentication?

Verbindung zu MySQL 4.1 mit Legacy-Authentifizierung nicht möglich

Beim Versuch, eine Verbindung zu einer MySQL-Datenbank herzustellen, wird möglicherweise die Fehlermeldung „Verbinden“ angezeigt Fehler (2000): mysqlnd kann mit der alten Authentifizierung keine Verbindung zu MySQL 4.1 herstellen. Dieses Problem ist auf ein veraltetes Passwortschema zurückzuführen, das von MySQL-Versionen vor 4.1 verwendet wird. Neuere Versionen von MySQL bieten eine Option zur Verwendung dieser veralteten Passwörter, von denen bekannt ist, dass sie möglicherweise zu diesem Verbindungsproblem führen.

Fehlerbehebung bei Verbindungsproblemen mit der MySQL-Datenbank

Wenn Ihre MySQL-Datenbank von einem Drittanbieter verwaltet wird, haben Sie möglicherweise keine Kontrolle über die Konfiguration. Wenn Sie jedoch Administratorzugriff auf die Datenbank haben:

1. Bestätigen Sie die Einstellungen des Server-Passwortschemas:

Führen Sie die MySQL-Abfrage aus:

SHOW VARIABLES LIKE 'old_passwords'
Nach dem Login kopieren
  • Wenn das Ergebnis „old_passwords,Off“ lautet, ist der Server nicht für die Verwendung von konfiguriert Standardmäßig das Legacy-Passwortschema.
  • Wenn das Ergebnis „old_passwords,On“ lautet, sind möglicherweise noch Legacy-Passworteinträge in der Benutzertabelle vorhanden, was die Verwendung der veralteten Authentifizierungsmethode auslöst.

2. Überprüfen Sie die Passwortlänge in der Tabelle „mysql.user“:

Führen Sie die Abfrage aus:

SELECT `User`, `Host`, Length(`Password`) FROM mysql.user
Nach dem Login kopieren
  • Legacy-Passwörter haben eine Länge von 16 Zeichen.
  • Moderne Passwörter haben eine Länge von 41 Zeichen.

3. Benutzerpasswort und Konfiguration aktualisieren:

  • Reset des Passworts für das betroffene Konto mit der Abfrage durchführen:
SET PASSWORD FOR 'User'@'Host'=PASSWORD('yourpassword');
Nach dem Login kopieren
  • Datenbankberechtigungen aktualisieren:
FLUSH Privileges;
Nach dem Login kopieren
  • Stellen Sie sicher, dass sich die Passwortlänge in der Tabelle „mysql.user“ auf 41 geändert hat.

4. Weitere Informationen zur Lösung dieses Problems finden Sie in der folgenden MySQL-Dokumentation:

[Alter Client](http://dev.mysql .com/doc/refman/5.0/en/old-client.html)

    [Passwort-Hashing](http://dev.mysql.com/doc/refman/5.0/en/password-hashing. html)
  • [Passwort festlegen](http://dev.mysql.com/doc/refman/5.0/en/set-password.html)

Das obige ist der detaillierte Inhalt vonWarum kann ich mit der Legacy-Authentifizierung keine Verbindung zu MySQL 4.1 herstellen?. 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