当前位置: 代码迷 >> PHP >> php与mysql 无法连接 mysql_connect() [function.mysql-connect]: Client does not suppor解决思路
  详细解决方案

php与mysql 无法连接 mysql_connect() [function.mysql-connect]: Client does not suppor解决思路

热度:270   发布时间:2016-04-28 19:13:46.0
php与mysql 无法连接 mysql_connect() [function.mysql-connect]: Client does not suppor
php与mysql无法连接,提示错误如下:
Warning: mysql_connect() [function.mysql-connect]: Client does not support authentication protocol requested by server; consider upgrading MySQL client 
in D:\XXXX\XXXX\apache-tomcat-8.0.5\webapps\Project\opendb.php on line 5
Could not connect: Client does not support authentication protocol requested by server; consider upgrading MySQL client


php的版本是php-4.4.9
myslq的版本是5.6
tomcat的版本是8.0.5

想要在本地搭建一个php的开发环境(tomcat+mysql+php)。
现在
1、Tomcat与php已经调通,在页面上可以看到phpinfo。
2、tomcat与mysql也调通,用jsp页面可以查询mysql中的表信息。

注:在网上查到的解决方法都不行。下面方法试过了,还是同样的错误提示。
----------------------------------------------------------------------------------------------------
主要是改变连接 MySQL 帐户的加密方式,MySQL 4.1/5.0 是通过 PASSWORD 这种方式加密的。可以通过以下两种方法得到解决:

1) MySQL->SET PASSWORD FOR 'some_user'@'some_host'=OLD_PASSWORD('new_password');

     MySQL->FLUSH PRIVILEGES;

2)MySQL->UPDATE MySQL.user SET Password=OLD_PASSWORD('new_password') WHERE Host='some_host' AND User='some_user';

     MySQL->FLUSH PRIVILEGES;

----------------------------------------------------------------------------------------------------
------解决方案--------------------
背景
从 php 5.3 开始,php 的 mysql 操作只使用内置的 mysql 客户端
显然这个客户端的版本是要低于 5.6 的,但不影响使用

原因
你安装 mysql 时,安装程序会把 mysql 的安装路径追加到操作系统环境变量 PATH 中
这就是不能访问的根源

补救
所以你需要从 PATH 中去掉 mysql 的路径
不过这样一来,jdbc 可能就无法连接 mysql 了,可能需要重新配置一下
  相关解决方案