php - 无法在 php 中连接到 mysql 8

标签 php mysql

我正在尝试使用 php 连接到 mysql 服务器,但出现以下错误

Connection failed: The server requested authentication method unknown to the client

mysql服务器版本为8.0.12,php版本为7.2.9。 我的代码连接到mysql服务器

<?php
$servername = "127.0.0.1";
$username = "root";
$password = "mypassword";
// Create connection
$conn = new mysqli($servername, $username, $password);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 
echo "Connected successfully";
?>

这个问题之前有人问过here但解决方案对我不起作用,所以我再次问这个问题。 谢谢

编辑:我现在重新安装了 php,它为相同的代码提供了以下内容

This page isn’t working
127.0.0.1 is currently unable to handle this request.
HTTP ERROR 500

最佳答案

我遇到了类似的问题,发现你可以通过Workbench运行下面的代码来改变mysql的认证

ALTER USER root@localhost IDENTIFIED WITH mysql_native_password BY 'new-password-here'

关于php - 无法在 php 中连接到 mysql 8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52219271/

相关文章:

php - 如何使用 xPath 知道节点是否是 XML 中的结束标记 </>?

php - 在Windows Server中安装phpmotion?

mysql - 允许用户创建和更改表?

php - MySQL:外连接和 COUNT()

mysql - 恢复迁移时 ActiveRecord::IrreversibleMigration 异常

php - 如何通过 laravel 的 lists() 传递不止 id 和 name

php - 如何从结果字段获取特定值

php - 如何登录croogo cakephp框架的管理面板

php - 简单关系型数据库——高效查询

Mysql查询-Word以内容内开头