does not support authentication protocol问题解决办法
mysql从3.xx升级到4.xx的时候经常会出现这个问题,原因是4.xx的权限表格式升级了,需要修复.
mysql4.1以上版本连接时出现Client does not support authentication protocol问题解决办法
shell> mysql
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 hashingalgorithm that is incompatible with that used by older clients. …..
如果你升级mysql到4.1以上版本后遇到以上问题,请先确定你的mysql client 是4.1或者更高版本.(WINDOWS下有问题你就直接跳到下面看解决方法了,因为MYSQL 在WINDOWS是client和server一起装上了的)
请使用以下两种方法之一
其一:
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;
上面红色的部分请按自己实际情况修改….
这样做后,连接就会正常了!
下面是一段测试代码
<?php
$link=mysql_connect(‘localhost‘,’root‘,’root‘);
if(!$link) echo “fail”;
else echo “success”;
mysql_close();
?>
同样,红色部分根据实际情况修改。