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 等擴展;
把監(jiān)聽端口改成別的,nginx反向代理這個端口。
以上就是關(guān)于PHP7.4與MySQL8認證問題詳解的詳細內(nèi)容,更多請關(guān)注創(chuàng)新互聯(lián)網(wǎng)站制作公司其它相關(guān)文章!