无法连接到数据库 - MySQL服务器已经消失

时间:2016-07-17 18:14:24

标签: php mysql mysqli

我尝试使用以下代码连接到我的数据库:

$connection = mysqli_connect($address, $username, $password, $database, $port);

if (!$connection) {
    throw new Exception("Error: Unable to connect to MySQL (Error Code " . mysqli_connect_errno() . ": " . mysqli_connect_error() . ")");
}

我已经检查过所有变量都是正确的,但我仍然无法连接。我做错了什么?

1 个答案:

答案 0 :(得分:0)

我遇到了问题,原来是连接用户的密码设置。

与旧方法相比,MySQL 5.7的默认身份验证类型似乎是将密码设置为SHA256散列。

这在MySQL cli上运行良好,但不能通过PHP 7.2.x(最新版本)运行。

PHP团队在这里记录了一个错误: https://bugs.php.net/bug.php?id=76651

在支持某些更高版本的MySQL更高支持的安全性设置之前,PHP似乎还有一段路要走。