Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

ERROR 1251: Client does not support authentication protocol requested

Status
Not open for further replies.

tuliphead

IS-IT--Management
Aug 27, 2004
143
0
0
NO
Ok, I have a problem with a MySQL environment.

- One server (Windows)
- Two instances of mysql (4.0.27 & 5.x.x)
- Each instance are running as a service with a different port number (tcp 3307/3306)
- Both services are set up with their own parameter files, so they point to the correct binary and data directory

When I try to log on through the console against the MySQL 5 database by starting c:\program files\mysql5\bin\mysql, then everything is working as it should.

If I try to do the same against the Mysql 4 database, it returns an error that the client does not support the authentication protocol requested.





 
I was to quick on the send button on this one:

Some more facts:
The server and client port are both set to 3306 and 3307.
When trying to connect to the mysql 4 database (which corresponds to tcp 3307), it gives this warning about not supporting the authentication protocol requested by the server. What seems odd to me is that the mysql console itself should allow me to connect to the database? It is the same client that is shipped with the distro of course.

It does not make any sense
 
Ok ... this is even more strange. When I try to connect remotely from two differen sources, the db-connection works just fine. If I try to connect locally from the mysql command console \bin\mysql -u root, then it reports the authentication error?
 
You seem to be running an old client (3.x)
I get the same when I use the MySQL 3 client when connecting to a MySQL 5 database.

The options are to upgrade the MySQL client on the machine, or to tell MySQL to use the older authentication method.
eg. startup using `mysqld_safe --old-password &`
or change the users password,
UPDATE user SET password=old_password('xxxx') WHERE user='yyyy';
flush privileges;



"If you always do what you've always done, you will always be where you've always been."
 
But when I have to mysql installations ...

eg:

programfiles\mysql1\bin\
programfiles\mysql2\bin\

both of those instances are defined as independent services and those services are running on different ports ...

When I go to the path programfiles\mysql2\bin\ and types mysql ... then I am using the client bundled with that spesific distribution?

This works perfectly remotely ... but when trying to administer this from the local console it all gets wrong?
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top