PHP警告: mysqli_connect(): (HY000/2002): Connection refused

标签 php mysql mamp

我正在使用 PHP 5.5 和 MAMP(从 here 下载):

我有一个像这样的基本脚本:

<?php
$servername = "127.0.0.1";
$username = "root";
$password = "root";

// Create connection
$conn = mysqli_connect($servername, $username, $password);

// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
?>

当我运行此脚本时,出现此错误:

PHP Warning:  mysqli_connect(): (HY000/2002): Connection refused in /Applications/MAMP/htdocs/test/test.php on line 7

我需要在 MAMP 或 PHP 中设置一些配置问题吗?

最佳答案

以防万一其他人遇到此问题,MAMP 上 mysql 的默认端口是 8889,但 php 期望用于 mysql 的端口是 3306。因此,您需要打开 MAMP,转到首选项,并将 MAMP mysql 端口更改为 3306,然后重新启动 mysql 服务器。现在连接应该成功,host=localhost, user=root, pass=root。

关于PHP警告: mysqli_connect(): (HY000/2002): Connection refused,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58785679/

相关文章:

php - 检查表中是否存在值或处理MySQL的唯一约束异常?

mysql - 将县链接到具有文档的唯一位置的正确 mysql 语句

php - mysql_fetch_array,似乎没有返回值

MySQL - JOINS(异常(exception))

PHP shell_exec 仅适用于某些命令

.htaccess - 如何让 MAMP 读取 .htaccess 文件

php - Cocoa错误3840操作无法完成

php - 带有散列密码和用户登录的新手 php 问题

php - 查询两个单独的表,在第二个查询中传递结果,而如果第二个查询返回 null,则仅保留第一个查询的结果

php - 存储时间为 00 :00:00 的时间戳