You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel 5.7在WampServer3.3运行报错SQLSTATE[HY000][2054]求助

问题描述

环境信息:

  • Laravel 5.7
  • PHP 7.1
  • WampServer 3.3

遇到的错误:

In Connection.php line 664:

  SQLSTATE[HY000] [2054] 服务器请求了客户端未知的认证方法 (SQL: select * from information_schema.tables where table_schema = razi_oil-db and table_name = languages)


In Connector.php line 70:

  SQLSTATE[HY000] [2054] 服务器请求了客户端未知的认证方法


In Connector.php line 70:

  PDO::__construct(): 服务器请求了客户端未知的认证方法 [caching_sha2_password]
问题原因

WampServer 3.3默认搭载的MySQL 8.0+版本,默认采用caching_sha2_password作为用户认证方式,但PHP 7.1的PDO扩展不支持这种新认证机制,导致数据库连接时触发认证失败。

解决办法

方法1:修改项目数据库用户的认证方式

  1. 打开Wamp控制台:点击Wamp图标 → MySQL → MySQL Console
  2. 输入MySQL root密码(无密码直接回车)
  3. 执行以下SQL语句,替换your_username和your_password为Laravel项目.env文件中配置的数据库用户名和密码:
ALTER USER 'your_username'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password';
FLUSH PRIVILEGES;
  1. 重启Wamp的MySQL服务,重新运行项目即可。

方法2:全局修改MySQL默认认证方式(可选)

如果需要所有新创建的数据库用户都自动兼容旧认证方式,可修改MySQL配置文件:

  1. 点击Wamp图标 → MySQL → my.ini
  2. 在[mysqld]区块下添加一行配置:
default_authentication_plugin=mysql_native_password
  1. 保存文件后重启MySQL服务,后续新建用户将默认使用mysql_native_password认证。

内容的提问来源于stack exchange,提问作者mjavadtatari

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 16:52:36