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

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

WBOY
WBOYOriginal
2016-06-13 11:57:121187Durchsuche

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 了,可能需要重新配置一下

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn