【问题标题】:MySQL 8.0 Requested authentication method unknown to the client (caching_sha2_password)MySQL 8.0 请求的客户端未知的身份验证方法 (caching_sha2_password)
【发布时间】:2019-04-24 09:02:04
【问题描述】:

环境

  • 微软视窗 10.0.16299.15
  • PHP 7.2.11
  • MySQL 社区服务器 8.0.13
  • Symfony 4

我尝试连接到 MySQL 数据库。当我

php bin/console doctrine:database:create

,我有这个:

驱动程序发生异常:SQLSTATE[HY000][2054] 服务器请求客户端未知的身份验证方法

PDO::_construct():服务器请求客户端未知的身份验证方法[caching_sha2_password]

【问题讨论】:

标签: mysql windows symfony doctrine-orm mysql-8.0


【解决方案1】:

您可以查看Upgrading to MySQL 8.0 : Default Authentication Plugin Considerations 以获取有关升级到 8.0 的重要说明的信息,您可以在其中找到:

在撰写本文时,以下连接器不支持caching_sha2_password。

如果您想了解更多信息,可以查看 MySQL 官方文档中的caching_sha2_password as the Preferred Authentication Plugin。

所以,我认为即将升级到 MySQL 8.0,您可以考虑降级或等待一段时间让 php mysql 扩展也升级。

【讨论】:

  • 我在“认证方式”和“使用旧的认证方式(保留mysql(X.兼容性))”中重新配置了
  • 这种方法似乎对我不起作用(尽管它应该符合我的理解)。所以我不得不通过 Oracle 安装程序重新安装 MySQL 服务器并检查“使用旧身份验证方法”(我想像 @Phil31971)。
【解决方案2】:

我认为您使用的是 MySQL 8,默认的身份验证方法已更改,也许您需要更改服务器配置中的某些内容。

看这个链接:https://github.com/laradock/laradock/issues/1392#issuecomment-368308494

您可以做的另一件事是降级您的 MySQL 版本。

【讨论】:

  • 感谢您的快速回答,但我使用的是 symfony 4,我稍后会尝试降级 mysql!
猜你喜欢
  • 2020-12-03
  • 2018-08-11
  • 1970-01-01
  • 2019-06-19
  • 2019-02-21
  • 2018-11-06
  • 1970-01-01
  • 2018-10-10
  • 1970-01-01
相关资源
最近更新 更多