Ich versuche, PHP 5.4.1 (aus dem Quellcode kompiliert) auszuführen, aber wenn ich versuche, eine Verbindung über MySQL herzustellen, erhalte ich:
Warning: mysql_connect(): The server requested authentication method unknown to the client [mysql_old_password] in
Bei Verwendung von PHP 5.3 / 5.2 funktioniert es normal. Irgendwelche Ideen, was dieses Problem verursacht?
Antworten:
Versuchen Sie dies zu lesen: Link
MySQL hat in (glaube ich) Version 4.1 längere Passwort-Hashes eingeführt, und Ihr Server verwendet diese wahrscheinlich immer noch (überprüfen Sie Ihre MySQL-Benutzertabelle auf 16-Byte-Passwort-Hashes). Neuere Versionen verwenden längere Passwort-Hashes. Ihr Server unterstützt beide, aber Ihr Client (PHP) scheint nur neue in dieser Version (und auf) zu unterstützen.
Wenn dies möglich ist, verwenden Sie die Lösung über den Link in der ersten Zeile und legen Sie Ihr Kennwort erneut mit dem neuen Hash fest. Beachten Sie jedoch, dass die Kompatibilität möglicherweise beeinträchtigt wird, wenn Sie andere (alte) Clients verwenden, die auf alten Kennwörtern basieren. Versuchen Sie auch, nach Unterstützung für alte Passwörter für MySQL in PHP zu suchen, aber ich bin mir nicht sicher.
quelle
quelle
Ich weiß, dass dies ein altes Thema ist, aber ich habe das Problem umgangen, ohne etwas aktualisieren / downgraden zu müssen. Grundsätzlich habe ich die Zeile old_passwords = 1 in meiner Datei my.cnf auskommentiert, mysql neu gestartet, den Benutzer hinzugefügt / geändert, der schließlich den 16-Byte-Hash erhalten hat. Dann bin ich zurückgegangen und habe die Zeile old_passwords = 1 auskommentiert und mysql neu gestartet. Also im Grunde genommen:
Da haben Sie es also: 1 Benutzer, der einen neuen Kennworttyp verwendet, während andere Benutzer ihre alten Kennworttypen verwenden. Und jeder kann sich einloggen! ;)
quelle
Dies kann häufig vorkommen, wenn Ihr MYSQL-Server einen alten Kennwort-Hash verwendet , das Kennwort ändert oder den Server aktualisiert, um den neuesten Kennwort-Hash zu erhalten, mit dem das Authentifizierungsproblem behoben wird.
quelle
Beim Versuch, meine MediaWiki-Installation zu aktualisieren, wurde eine ähnliche Meldung angezeigt. Ich verwende Netfirms als Hosting-Anbieter und habe dieses Problem gelöst, indem ich mich in der Systemsteuerung angemeldet, den MySQL-Bereich aufgerufen und die von mediawiki verwendete Datenbank geändert habe. Ich konnte dann mit dem MediaWiki-Upgrade fortfahren.
quelle