HiveBrain v1.2.0
Get Started
← Back to all entries
patternsqlMinor

Server requested authentication method unknown to the client [mysql_old_password]

Submitted by: @import:stackexchange-dba··
0
Viewed 0 times
themethodunknownauthenticationclientmysql_old_passwordserverrequested

Problem

Warning: PDO::__construct(): The server requested authentication method unknown to the client [mysql_old_password]
SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client


I get the error above while trying to connect to my MySQL database server on Hostgator, using a PHP script on my local server. I understand it's a password hashing issue usually between pre MySQL 4.1 and MySQL 4.1+.

I've changed my local server to use the old_password following the instruction I found here.

After changing it to 16 bit hash, I still can not connect, and the error message remains the same. And more so, I can no longer login to phpmyadmin. I'm using XAMPP on windows. Please any suggestions on how to solve these problems?

Solution

I had the same error, trying to debug locally some application that connects to remote DBs.
When using php < 5.3, everything worked.
When using php 5.3 or greater, error shows up.

After hours spent reading and tweaking, i realized this only occurred when connecting as a certain user.
All databases i use have new password length (41).

I changed the password for that user, and everything worked fine, even after changing it again to the previous value.

Hope this helps someone.

Context

StackExchange Database Administrators Q#34024, answer score: 9

Revisions (0)

No revisions yet.