错误MySQL 返回: #1251 - Client does not support authentication protocol requested by server
MySQL 5.1采用了基于密码混编算法的鉴定协议,它与早期客户端(4.1之前)使用的协议不兼容。如果你将服务器升级到4.1之上,用早期的客户端进行连接可能失败,并给出下述消息:
shell> mysql客户端不支持服务器请求的鉴定协议:请考虑升级MySQL客户端。
要想解决该问题,应使用下述方法之一:
· 升级所有的客户端程序,以使用4.1.1或更新的客户端库。
· 用4.1版之前的客户端连接到服务器时,请使用仍具有4.1版之前风格密码的账户。
· 对于需要使用4.1版之前的客户端的每位用户,将密码恢复为4.1版之前的风格。可以使用SET PASSWORD语句和OLD_PASSWORD()函数完成该任务:
· mysql> SET PASSWORD FOR
· -> 'some_user'@'some_host' = OLD_PASSWORD('newpwd');
也可以使用UPDATE和FLUSH PRIVILEGES:
mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('newpwd') -> WHERE Host = 'some_host' AND User = 'some_user';mysql> FLUSH PRIVILEGES;
用你打算使用的密码替换前例中的“newpwd”。MySQL不能告诉你原来的密码是什么,因此,你需要选择新的密码。
· 通知服务器使用旧的密码混编算法:
1. 使用“--old-passwords”选项启动mysqld。
2. 对于已将密码更新为较长4.1格式的每个账户,为其指定具有旧格式的密码。可以使用下述查询确定这些账户:
3. mysql> SELECT Host, User, Password FROM mysql.user4. -> WHERE LENGTH(Password) > 16;
对于查询显示的每个账户记录,请使用Host和User值,并使用OLD_PASSWORD()函数以及SET PASSWORD或UPDATE之一指定密码,如前面所介绍的那样。
- 收藏此页到 IE收藏夹 POCO网摘 [365Key] [ViVi] 百度藏搜 和讯网摘 天极网摘 狐摘 向您的朋友推荐此文章
- 转载请注明来源:文章大全 网址:http://www.itlearner.com/article/
- 文章关键词:MySQL
- 如意搜索搜索更多内容:错误MySQL 返回: #1251 - Client does not support authentication protocol requested by server
- 特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系我们,我们会尽快予以更正。
相 关 文 章
相 关 软 件
本站搜索(搜索结果将在新窗口打开)
