You need to enable JavaScript to run this app. 安装Strapi连接MySQL报错:密码不符合策略及认证模式不支持如何解决?
优惠活动
大模型
产品
解决方案
定价
更多

安装Strapi连接MySQL报错:密码不符合策略及认证模式不支持如何解决?

两个报错的根因分别为:MySQL 8.0默认使用caching_sha2_password认证协议,Strapi依赖的MySQL客户端暂不支持;修改认证协议时触发了MySQL自带的密码强度校验规则。

报错解决步骤

1. 解决密码强度不满足要求报错

两种可选方案,根据你的场景选择:

方案一:临时降低校验规则(仅本地开发环境推荐)

登录MySQL命令行后依次执行以下语句:

  • 查看当前密码校验配置:SHOW VARIABLES LIKE 'validate_password%';
  • 临时调低策略等级和最小长度要求:
SET GLOBAL validate_password.policy = LOW;
SET GLOBAL validate_password.length = 4;
  • 执行认证协议修改语句,将你的密码替换为实际要设置的数据库密码:
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
  • 刷新权限生效:FLUSH PRIVILEGES;

方案二:使用符合强度要求的密码(生产/安全优先)

无需修改校验规则,直接将ALTER语句中的密码替换为满足默认MEDIUM等级要求的密码即可,要求至少8位,同时包含大小写字母、数字和特殊字符,例如Test@2024。

2. 验证配置并重新安装Strapi

完成上述修改后,重新执行Strapi安装命令:
npx create-strapi-app my-app
输入刚才设置的MySQL密码即可正常完成连接校验和安装。

可选:永久生效配置(仅本地开发环境)

如果不想每次重启MySQL后重新设置规则,可以修改Homebrew安装的MySQL配置文件:

  • M1芯片Mac路径:/opt/homebrew/etc/my.cnf
  • Intel芯片Mac路径:/usr/local/etc/my.cnf
    在[mysqld]节点下添加以下内容:
validate_password.policy=LOW
validate_password.length=4
default-authentication-plugin=mysql_native_password

保存后重启MySQL服务生效:brew services restart mysql


内容的提问来源于stack exchange,提问作者Kyle Corbin Hurst

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.19 09:15:03