PHP系统连接Mysql8数据库系统,页面上报了如下错误:
SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client
原因:是由于MySQL 8默认使用了新的密码验证插件:caching_sha2_password,而之前的PHP版本中所带的mysqlnd无法支持这种验证。
解决办法:修改系统所连账号的验证插件
ALTER USER 'user'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';