欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-05-29 09:47:22
mysql8的默认密码加密方式是caching_sha2_password,PHP7.4连接mysql的加密方式也为caching_sha2_password,这个地方要注意。 当为了兼容旧版的客户端不只是PHP,还有在主从复制的时候也会有问题,mysql8的认证方式改回了mysql_native_ ......

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;

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

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