LocalHost 上的 PHP 连接被拒绝 (HY000/2002)

标签 php mysql localhost web-hosting

在阅读了此处和其他各种互联网论坛上的许多类似主题后,我的 PHP 代码仍然存在问题,这让我陷入了困境......这是 error_log 中的错误 文件给了我:

[30-Apr-2018 17:05:11 UTC] PHP Warning:  mysqli::mysqli(): (HY000/2002): Connection refused in /home/nicktric/public_html/index.php on line 12

这是我的代码的当前且非常简单的状态:

<!DOCTYPE html>
<html>
<body>

<?php
$servername = "127.0.0.1";
$username = "nicktric_admin";
$password = "########";
$dbname = "nicktric_routes";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$sql = "SELECT name, server, status FROM routeStatus";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "<br> id: ". $row["name"]. " - Name: ". $row["server"]. " " . $row["status"] . "<br>";
    }
} else {
    echo "0 results";
}

$conn->close();
?> 

</body>
</html>

到目前为止我已经尝试过以下操作:

  • localhost127.0.0.1 和服务器共享 IP 之间更改主机名
  • 修改 PHP 套接字没有效果,因为我无法在 CPanel 上找到正确的配置

此外,需要注意的一些事项是:

  • 我通过 CPanel 网络托管执行此操作
  • 数据库名称、用户名和密码均正确且已链接到数据库(为了安全起见,密码已被覆盖)

最佳答案

检查 mysqld 是否正在运行,并且您的防火墙是否允许 mysql 数据库通过。

编辑您的 php.ini 文件并确保在 Windows 上启用扩展 extension=php_mysqli.dll 或在 Linux 上启用 extension=php_mysqli.so。

在这里尝试答案:Test Mysql

  • 您必须检查两项设置才能使其正常工作(假设 当然你已经安装了 MySQL 服务器):
  • 检查 PHP 配置中 mysql.default_socket 的值。
  • 检查 MySQL 配置文件中的套接字值 [mysqld] 标题。
  • 这些值必须相同;如果不是,请将其更改为 匹配另一个并重新启动相应的服务。

关于LocalHost 上的 PHP 连接被拒绝 (HY000/2002),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50106028/

相关文章:

mysql - MySQL Connector/J 读取 ~/.my.cnf 吗?

apache - 无法从我的本地主机访问 docker 上的 apache

mysql - 如何选择表行值作为值总和的列

mysql - 我无法在 ubuntu 18.04 上安装 mysql

javascript - 在不同端口的本地主机上的 2 个 Angular SPA 之间共享 sessionStorage

javascript - Cookie 不适用于 Chrome,但适用于 Firefox (localhost)

php - 如何使用cmd批量多次运行.php脚本?

php - 在 Slim 中实现自定义类

php - mpdf - 表格列高

php - 将输入与两个表进行比较