MySQL8.0The server requested authentication method unknown to the client

发布于 2020-09-21  247 次阅读


今天写PHP连接本地数据库的时候报了个错,连接失败。错误是:The server requested authentication method unknown to the client;(服务器请求客户端未知的身份验证方法)

这是因为从8.0.11版本起,不再像mysql5.7及以前版本那样,设置用户密码时默认的验证方式为caching_sha2_password

解决方法我是通过修改MySQL的配置文件修改回原来的验证方式(mysql_native_password)

  1. Windows中打开隐藏文件 C:\ProgramData\MySQL\MySQL Server 8.0
  2. 找到my.ini写入
    [mysqld]
    default_authentication_plugin=mysql_native_password
  3. 重启MySQL服务
  4. > use mysql  
    > ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';  
    > FLUSH PRIVILEGES;
    

第四步是修改root密码,然后重启MySQL服务即可解决!!


态度决定高度,努力造就实力