php连接mysql8报错如何解决
php版本为5.6,连接mysql8.0时报错,但是连接其他mysql8前的版本是正常的
原因可能是mysql8默认的使用密码认证方式不一样,mysql8.0默认使用caching_sha2_password,但是之前版本都是使用mysql_native_password
解决办法:
修改/etc/my.cnf文件
找到default-authentication-plugin=mysql_native_password这行
把前面的#号取消掉,重启mysql,就会变成默认使用mysql_native_password了,再使用之前的php脚本测试连接mysql就没问题了
如下。红色箭头标注的root用户就可以正常连接了