[PHP] 新版本PHP7.4与新版本MySQL8认证问题

前端之家收集整理的这篇文章主要介绍了[PHP] 新版本PHP7.4与新版本MySQL8认证问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

MysqL8的默认密码加密方式是caching_sha2_password,PHP7.4连接MysqL的加密方式也为caching_sha2_password,这个地方要注意。

当为了兼容旧版的客户端不只是PHP,还有在主从复制的时候也会有问题,MysqL8的认证方式改回了MysqL_native_password。如果使用PHP7.4的情况下,这里就会认证报错,因为7.4是caching_sha2_password加密方式,因此这里我可以改用成PHP7.2

不改配置的情况下,可以使用下面的方式更改MysqL8的加密方式,为root用户更改密码:
USE MysqL;
ALTER USER 'root'@'%' IDENTIFIED WITH MysqL_native_password BY '123456';
FLUSH PRIVILEGES;

新增安装PHP7.2
apt-get install PHP7.2-fpm PHP7.2-MysqL 等扩展
把监听端口改成别的,Nginx反向代理这个端口

猜你在找的PHP相关文章