1

我正在使用 MySQL 的 Zymic(免费主机)上托管一个网站。我开了一个帐户,并编写了 SIMPLEST 函数来连接数据库。它看起来像这样:

<?php
    $conn = mysql_connect("uuuq.com","paulasplace_sudo","mypassword");
    if(!$con)
    {
        die("Could not connect: " . mysql_error());
    }
    else
    {
        echo("mysql connected successfully!");
    }
?>

但它抛出了这个错误:

警告:mysql_connect() [function.mysql-connect]:在“读取初始通信数据包”时丢失与 MySQL 服务器的连接,系统错误:/www/uuuq.com/p/a/u/paulasplace/htdocs/index 中的 111。第 9 行的 php 无法连接:在“读取初始通信数据包”时丢失与 MySQL 服务器的连接,系统错误:111

有什么想法可能是错的吗?

4

4 回答 4

5

这可能只是从您将代码复制到帖子中时开始的,但是您将 mysql_connect() 的结果存储到 $conn 中,但是 if 语句检查了不同的变量 $con...

于 2009-02-27T04:53:35.503 回答
1

对于像我这样在虚拟机上遇到同样问题的人,或者您拥有创建用户的所有权利(在 phpmyadmin 中读取的权限),对我来说问题是我的数据库用户创建不正确。在创建我的数据库用户时,我错误地设置了名称后面的参数之一,有一个选择器,您可以在其中选择服务器:选择为默认值是我的错误,上面写着“任何服务器”并设置为 % ,我不得不更改它,事实上,我必须创建一个具有相同名称和不同服务器的新用户,我将其设置为 localhost。我的问题得到了解决,我删除了我的其他用户,重新启动了服务器,它工作正常。

于 2012-11-12T18:45:37.380 回答
0

我怀疑主机名是“localhost”而不是 uuuq.com。

于 2009-02-27T04:51:52.123 回答
0

通常,这些免费主机的 MySQL 服务器完全位于不同的地址,而不是简单的 localhost 或站点地址本身。

如果主机提供对 phpMyAdmin 的访问,打开它然后查看页面顶部,您应该会看到类似以下内容的内容

服务器:s1.mysqlserver.com

那就是你想要的地址。

于 2009-02-27T04:56:48.117 回答