WEB开发网
开发学院数据库MySQL 解决php连新版本mysql数据库错误 阅读

解决php连新版本mysql数据库错误

 2007-11-11 15:18:08 来源:WEB开发网   
核心提示:在更新到 4.1.1x 版本的 MySQL(和PHP搭配之最佳组合) 后,发现需要使用 MySQL(和PHP搭配之最佳组合)i 扩展方能正常使用数据库,解决php连新版本mysql数据库错误,否则会出现 1251 - Client does not support authentication protocol req

在更新到 4.1.1x 版本的 MySQL(和PHP搭配之最佳组合) 后,发现需要使用 MySQL(和PHP搭配之最佳组合)i 扩展方能正常使用数据库,否则会出现 1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL(和PHP搭配之最佳组合) client 的提示,这个很纳闷,我没有研究具体的问题,只是切换到 MySQL(和PHP搭配之最佳组合)i 扩展,其实在给 root 加上密码前还是可以使用 MySQL(和PHP搭配之最佳组合) 扩展的,可是给 root 加上密码后就出现了上述客户端版本太低的提示。
  目前已知解决方法:

先用root登录MySQL(和PHP搭配之最佳组合)服务器,执行

MySQL(和PHP搭配之最佳组合)>set password for user1@"localhost"=old_password('yourPassword');

原因是因为你使用的MySQL(和PHP搭配之最佳组合)服务器版本中使用了新的密码验证机制,这需要客户端的版本要在4.0以上,原来的密码函数被改为old_password();,这样使用password()生成的密码在旧的版本上的客户端就不好使了,而PHP中的MySQL(和PHP搭配之最佳组合)客户端都是3.23的(当然,MySQL(和PHP搭配之最佳组合)i的扩展除外),问题就在这了。

Tags:解决 php

编辑录入:coldstar [复制链接] [打 印]
赞助商链接