Mysql 4以上版本密码算法不同导致“Client does not support authentication protocol requested by server”错误

以前一直用Mysql 3.23.44,PHP5正式发布后,喜欢尝鲜的我忍不住了,用了几天PHP5,才感觉我的Mysql太弱,于是乎升级我的Mysql,心一横,最新的Mysql 5.0.1,嘿嘿,不信数据库弱。

安装很顺利,登录到mysql

G:/Mysql/bin>mysql -uroot

mysql>......

然后删除一些不用的帐号,只留下了一个root帐号。

更新root密码:

mysql>update user set password=password('password') where host='localhost' and user='root';

成功!

退出并重新启动Mysql服务。

接下来配置phpMyadmin的Config.inc.php

修改Mysql用户名、密码

打开phpMyadmin,登录:

结果很意外竟然弹出错误信息:

Client does not support authentication protocol requested by server;

意思好像是需要我升级客户端,我彻底失望了,我以为Mysql 5.0.1也和3.23.44一样好安装。

后来,我用Google搜索错误信息中的部分内容,搜索到了Mysql的官方网站,一看,明白了,原来是password算法的问题,因为5.0.1版Mysql的password算法和3.23.44的算法不一样了

(原文地址:http://dev.mysql.com/doc/mysql/en/Old_client.html

采取官方网站的解决办法,一次搞定,嘿嘿

mysql>SET PASSWORD FOR
         >'root'@'localhost' = OLD_PASSWORD('newpassword');

写此文章,仅希望有同样问题的朋友能尽快解决此问题。

还有一个办法,也可以通过升级Mysql的客户端解决此问题,PHP5新引入的Mysqli就可以。如果使用PHP4连接Mysql4以上数据库,则用本文的方法来解决。

欢迎网友交流经验。
QQ:47974924
MSN:fzj_w@yahoo.com.cn
Email:fzj-w@126.com

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值