我在连接到mysql服务器时遇到了一些麻烦。我可以使用linux终端连接,所以我知道我的主机,端口,用户和密码都有效。但是,我无法使用PHP连接。
PHP版本: 5.2.17
服务器版本: 5.5.27-log MySQL社区服务器(GPL)
以下是测试代码示例:
<?php
$link = mysqli_connect('host.com:5306', 'user', 'pass', 'db');
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
if (!mysqli_query($link, "SET a=1")) {
printf("Errormessage: %s\n", mysqli_error($link));
}
/* close connection */
mysqli_close($link);
?>
发出以下警告:
Warning: mysqli_connect() [function.mysqli-connect]: (HY000/2005): Unknown MySQL server host 'host.com:5306' (1) in /.../test.php on line 3
Connect failed: Unknown MySQL server host 'host.com:5306' (1)
有关该怎么做的任何想法?提前谢谢!
答案 0 :(得分:42)
端口号必须是单独的参数:
$link = mysqli_connect('host', 'user', 'pass', 'db', 5306);
答案 1 :(得分:1)
host是你的mysql服务器的IP,或者是“localhost”
答案 2 :(得分:1)
关于该怎么做的任何想法?
不确定。关于任何php函数的每个问题的简单三步解决方案:
php.net/
,然后输入问题函数名称:php.net/mysqli_connect
现在您可以阅读其说明并查看正确的参数列表。
答案 3 :(得分:0)
mysql函数中的host参数需要是“localhost”或“127.0.0.1”
您将参数设置为“host:port”,这是您的错误。它需要是服务器或具有完整IP地址的远程服务器中网络的完整别名。您可以在此处找到有关此错误的更多信息:http://compnetworking.about.com/od/workingwithipaddresses/g/127_0_0_1_def.htm
php.net中的mysql书:http://www.php.net/manual/en/function.mysql-connect.php