2017-03-31 123 views
0

我可以用mysqli连接到我的数据库。但是,当我添加MYSQL_CLIENT_COMPRESS标志时,它不会连接。PHP:让MYSQLI_CLIENT_COMPRESS工作

我在Windows 8.1上使用PHP 7.0.10,MySQL 5.7.14和WAMP安装。

我一直在使用:

$db=mysqli_connect($sHost, $sUsername, $sPassword, $sDatabase, MYSQLI_CLIENT_COMPRESS); 

我碰到下面的连接错误

Debugging errno: 2002
Debugging error: No connection could be made because the target machine actively refused it.

+0

如果MySQL与PHP在同一台服务器上,为什么要添加开销? PHP日志中有什么? – mkaatman

+0

对于生产版本,MySQL不在同一台服务器上。但是对于我的开发版本,我使用的是本地主机连接。 –

+0

它看起来像PHP告诉你,你的MySQL服务器拒绝连接,所以看下一个地方将在MySQL错误日志。 – mkaatman

回答

0

这工作:

$db = mysqli_init(); 
$db->real_connect($sHost, $sUsername, $sPassword, $sDatabase, 0, '', MYSQLI_CLIENT_COMPRESS); 

这也适用于:

global $db; 
$db=new mysqli($sHost, $sUsername, $sPassword, $sDatabase, 0, '', MYSQLI_CLIENT_COMPRESS);