安装mysql4.1.x版本后更改mysql的root密码出现问题的解决办法

发表于:2007-07-04来源:作者:点击数: 标签:
my sql 4.1以上版本连接时出现问题解决办法 今天安装LAMP之后,更改了mysql的root密码,在使用 php myadmin软件来管理 数据库 的时候出现如下错误 Client does not support authentication protocol。 开始怀疑是我的配置出了问题,然后我重新建立了一个跟ro

mysql4.1以上版本连接时出现问题解决办法

今天安装LAMP之后,更改了mysql的root密码,在使用phpmyadmin软件来管理数据库的时候出现如下错误

clearcase/" target="_blank" >cc0033" size="1">Client does not support authentication protocol。

开始怀疑是我的配置出了问题,然后我重新建立了一个跟root权限一样的用户,更改了密码之后仍然出现上述错误。翻阅了相关资料后,发现

应该说这是Mysql的一个bug。因为我是从source安装的,所以不存在客户端版本的问题。解决方法如下:

今天安装LAMP之后,更改了root密码,在使用phpmyadmin软件来管理数据库的时候出现如下错误

Client does not support authentication protocol。

开始怀疑是我的配置出了问题,然后我重新建立了一个跟root权限一样的用户,更改了密码之后仍然出现上述错误。翻阅了相关资料后,发现应该说这是Mysql的一个bug。因为我是从source安装的,所以不存在客户端版本的问题。

官方的说法是

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

解决方法如下:

其一:

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;
上面红色的部分请按自己实际情况修改....
这样做后,连接就会正常了@!
譬如:
[root@localhost]#mysql -uroot -p1234567   (1234567为我更改后的密码,注意在更改密码之后如果不进行如下操作,即使更改了config.inc.php文件中的pwd为1234567也是无济于事)
mysql> SET PASSWORD FOR
    -->'root'@'localhost' = OLD_PASSWORD('1234567');
mysql>quit
[root@localhost]#
  然后更改你的phpMyadmin的config.inc.php文件,将配置中的密码改为1234567,试试看。一定就可以成功进入了。

原文转自:http://www.ltesting.net