【问题标题】:Having trouble with connecting to MySQL database in php在 php 中连接到 MySQL 数据库时遇到问题
【发布时间】:2023-03-08 19:27:01
【问题描述】:

我已经制作了 mysql.php 文件,其中包含连接到我的数据库的代码。

但是,我一遍又一遍地收到此错误消息。

Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'localhost' (10061) in C:\CustomerData\webspaces\webspace_00290195\wwwroot\mysql.php on line 7
Warning: mysql_select_db() [function.mysql-select-db]: Can't connect to MySQL server on 'localhost' (10061) in C:\CustomerData\webspaces\webspace_00290195\wwwroot\mysql.php on line 8
Warning: mysql_select_db() [function.mysql-select-db]: A link to the server could not be established in C:\CustomerData\webspaces\webspace_00290195\wwwroot\mysql.php on line 8
Unable to select database

我检查了我的用户名、主机、数据库和密码是否拼写错误,但它们都正确。

我浏览了互联网,但似乎找不到适合我的问题的解决方案。

我的 mysql.php 文件包含:

<?php
// Mysql settings
$user   = "example_example";
$password = "example";
$database = "example_example";
$host   = "localhost";
mysql_connect($host,$user,$password);
mysql_select_db($database) or die( "Unable to select database");
?>

我已将用户名、密码和主机名更改为“示例”。

我只是找不到适合自己的解决方案,我需要您的帮助。

提前谢谢你。

【问题讨论】:

  • 请不要使用 mysql_* 函数进行数据库访问,除了名称之外,它们已被弃用。我建议您暂时改用 mysqli_* 。至于您的问题,数据库服务器是否已启动并正在运行,您可以从命令行或 mysqlyog 等其他工具连接到它吗?
  • 您确定您的 MySQL 服务器正在运行吗?您确定它在标准端口上运行(如果不是,请在 PHP 脚本中指定)?
  • 数据库服务器已启动并运行,我的端口是3306。
  • 尝试通过其他工具连接到您的数据库,看看是否可行(phpMyAdmin 或HeidiSQL
  • @user1479208 :试试我的答案,它应该可以工作......

标签: php mysql database connect host


【解决方案1】:

请尝试使用mysql_error()函数查找错误,如下:

mysql_connect($host,$user,$password) or die(mysql_error());
mysql_select_db($database) or die(mysql_error());

然后尝试找出失败的确切原因。

【讨论】:

    【解决方案2】:
    Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'localhost' (10061)
    

    这里是出现此错误时您必须做的问题列表:

    1.- mysql 是否在服务器上运行?

    1.1.- mysql 是在默认端口还是在自定义端口上运行?

    1.2 - mysql 是否接受连接(来自本地主机,来自 ip...?

    1.3 - 你的防火墙阻止了 mysql?

    2.- 数据库是否存在于服务器上?

    3.- 用户:密码有权访问该数据库?

    3.1- user:password 可以从 localhost 登录,从一个 ip... 从 mysql 的任何地方登录 接受吗?

    我想我什么都不会忘记

    【讨论】:

    • 感谢您的回复!当我检查我的服务器、数据库等时,我会自己回答这些问题。
    • 如果您不知道如何检查,请告诉我们:D
    【解决方案3】:

    请先检查你的mysql服务器是否正常运行。

    Mysql 设置

    $user   = "example_example";
    $password = "example";
    $database = "example_example";
    $host   = "localhost";
    $cn=mysql_connect($host,$user,$password);
    mysql_select_db($database,$cn);
    

    请尝试一下,它可能会起作用
    我不是 php 专家,但这段代码在我的网站上运行良好
    如果您在应用此代码后遇到任何错误,请通知我,我会尽快解决问题。 谢谢

    【讨论】:

    • 警告:mysql_connect() [function.mysql-connect]:无法连接到 C:\CustomerData\webspaces\webspace_00290195\wwwroot\mysql.php 中 'localhost' (10061) 上的 MySQL 服务器第 7 行警告:mysql_select_db():提供的参数不是 C:\CustomerData\webspaces\webspace_00290195\wwwroot\mysql.php 中的有效 MySQL-Link 资源第 8 行无法选择数据库
    • 您是否检查过您的服务器是否正常运行??
    • 是的,服务器运行正常。我认为这是代码问题。
    • 此代码在我的网站上运行正常,没有任何警告或错误,请稍候,我会尝试解决。
    • 请访问此站点,它可能会对您有所帮助webdeveloper.com/forum/showthread.php?t=82447
    【解决方案4】:

    您应该在选择数据库时提供需要从数据库使用的连接。也使用单引号而不是双引号。

    <?php
    // Mysql settings
    $user   = 'example_example';
    $password = 'example';
    $database = 'example_example';
    $host   = 'localhost';
    $link = mysql_connect($host,$user,$password);
    mysql_select_db($database,$link) or die( "Unable to select database");
    ?>
    

    Reference

    【讨论】:

    • 警告:mysql_connect() [function.mysql-connect]:无法连接到 C:\CustomerData\webspaces\webspace_00290195\wwwroot\mysql.php 中 'localhost' (10061) 上的 MySQL 服务器第 7 行警告:mysql_select_db():提供的参数不是 C:\CustomerData\webspaces\webspace_00290195\wwwroot\mysql.php 中的有效 MySQL-Link 资源第 8 行无法选择数据库
    【解决方案5】:

    您必须先获取数据库信息。当您尝试连接到您的网站托管中的数据库时,您发布了这个问题,对吧?

    因此,请转到您的主机控制面板以获取 MySQL 数据库(并注意数据库的存储位置!有时一些主机提供商不使用“localhost”。相反,其中一些可能使用 'serverXX. yourhostingprovider.tld',其中 XX 表示服务器 ID),然后将相应的变量更改为您从主机控制面板获得的值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-10-01
      • 2019-12-16
      • 1970-01-01
      • 2017-05-23
      • 2019-11-27
      • 1970-01-01
      • 2021-11-13
      相关资源
      最近更新 更多