老问题了http://www.google.com/search?hl=zh-CN&newwindow=1&q=Client+no+Support+Authentication+protocol+requested+&btnG=%E6%90%9C%E7%B4%A2&lr=lang_zh-CN%7Clang_zh-TW
解决方案 »
- MySQL Command Line Client显示中文的部分为空,不是乱码
- 如何用mysql语句实现这个?
- 外键必需是另一个表中的主键吗?
- 关于MySQL跨服务器查询的问题
- 写了一个MySQL连接测试,不行,帮看看
- 求句SQL~~~~~~~
- 为什么rollback不起作用?
- user表中max_updates,max_questions,max_connections,max_user_connections几个字段的含义
- mySql中如何实现如SQL Server中insert into table1(***) select (***) from table2的功能
- 如何使用SQL语句备份整个数据库?
- 这是mysql的bug吗?〉
- limit的排序问题,进来帮个忙,3Q
http://mascotzhuang.go.nease.net/
因为你用的 MySQL 是高版本的.
而 高版本的 MySQL 加强了身份验证安全性,
所以与 旧版 MySQL 的客户端程序在身份验证上不兼容了.
MySQL 4.1 and up uses an authentication protocol based on a password hashing algorithm that is incompatible with that used by older clients. If you upgrade the server to 4.1, attempts to connect to it with an older client may fail with the following message: shell> mysql
Client does not support authentication protocol requested
by server; consider upgrading MySQL clientTo solve this problem, you should use one of the following approaches: Upgrade all client programs to use a 4.1.1 or newer client library.
When connecting to the server with a pre-4.1 client program, use an account that still has a pre-4.1-style password.
Reset the password to pre-4.1 style for each user that needs to use a pre-4.1 client program. This can be done using the SET PASSWORD statement and the OLD_PASSWORD() function: mysql> SET PASSWORD FOR
-> 'some_user'@'some_host' = OLD_PASSWORD('newpwd');Alternatively, use UPDATE and FLUSH PRIVILEGES: mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('newpwd')
-> WHERE Host = 'some_host' AND User = 'some_user';
mysql> FLUSH PRIVILEGES;Substitute the password you want to use for ``newpwd'' in the preceding examples. MySQL cannot tell you what the original password was, so you'll need to pick a new one.
Tell the server to use the older password hashing algorithm:
Start mysqld with the --old-passwords option.
Assign an old-format password to each account that has had its password updated to the longer 4.1 format. You can identify these accounts with the following query: mysql> SELECT Host, User, Password FROM mysql.user
-> WHERE LENGTH(Password) > 16;For each account record displayed by the query, use the Host and User values and assign a password using the OLD_PASSWORD() function and either SET PASSWORD or UPDATE, as described earlier.
For additional background on password hashing and authentication, see section 5.5.9 Password Hashing in MySQL 4.1.