« 重新恢复了blog.devep.net/virushuo | Main | 最早注册的100个域名 »

mysql 4.1 windows版本客户端登录错误

作者:virushuo 发表于 2005-10-19 01:10 最后更新于 2005-10-19 05:10
版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明


Mysql 4.1版本,用客户端连接的时候(用phpmyadmin等等php的程序也有一样的问题),会出现这个提示:
Client does not support authentication protocol requested
by server; consider upgrading MySQL client

原因:
MySQL 4.1 and up uses an authentication protocol based on a password hashing algorithm that is incompatible with that used by older clients. .....

大概就是4.1 采用了新的加密算法(是什么新的呢?不都是md5吗?),但是客户端的加密方法仍然还是旧的算法。所以就出错了。

解决方法:
先用mysql -uroot -p 连接到数据库,然后
mysql> SET PASSWORD FOR
-> 'some_user'@'some_host' = OLD_PASSWORD('newpwd');

或是

mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('newpwd')
-> WHERE Host = 'some_host' AND User = 'some_user';
mysql> FLUSH PRIVILEGES;

这样就能解决了。其实就是用这条语句把密码重新写到数据库一次。
但很烦的,以后如果修改了用户的密码,或是新增加了用户,都要这样处理一下才可以。

以下文章供您参考:

从SOA说开去 - Mar 10, 2008

德国式的幽默 - Mar 06, 2008

说总是比做容易 - Mar 03, 2008

TrackBack

TrackBack URL for this entry:
http://www.devep.net/cgi-bin/mt/devtb.pl/369

Post a comment


about me:
me.jpg
CC License. Some rights reserved.
署名·非商业用途·保持一致
本站之所有未作特别说明的内容均使用 创作共用协议.
POWERED_BY_MT_3.2