SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client
是由于MySQL 8默认使用了新的密码验证插件:caching_sha2_password,而之前的PHP版本中所带的mysqlnd无法支持这种验证。
想要解决这种问题一般可以
- 升级php PHP7.1.20 和PHP7.2.8已经可以支持这个验证
- 修改mysql的my.cnf配置文件,
echo default_authentication_plugin= mysql_native_password >> /usr/mysql/my.cnf(小心不要写到>)
然后重启一下mysql,
我这里用的是docker的容器 所以直接退出restart
就可以了