
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.user
4.
->WHERE LENGTH(Password) >16
对于查询显示的每个账户记录,请使用Host和User值,并使用OLD_PASSWORD()函数以及SET PASSWORD或UPDATE之一指定密码,如前面所介绍的那样。
注释:在早期的PHP版本中,mysql扩展不支持MySQL 4.1.1和更高版中的鉴定协议。无论使用的PHP版本是什么,它均是正确的。如果你打算与MySQL 4.1或更高版本一起使用mysql扩展,需要使用前面介绍的选项之一,配置MySQL,以便与较早的客户端一起使用。mysqli扩展(支持“改进的MySQL”,在PHP 5中增加)与MySQL 4.1和更高版本中使用的改进的密码混编算法兼容,不需要对MySQL进行特殊配置就能使用该MySQL客户端库。
兼容。个人使用的云数据库mysql100%是完全兼容mysql协议的,适用于面向关系型数据库的场景。云数据库是指被优化或部署到一个虚拟计算环境中的数据库,可以实现按需付费、按需扩展、高可用性以及存储整合优势。欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)