解决php7.2连接mysql8.4失败的问题

如果你的数据库账号密码都对,但就是连接不上,那么大概率是因为mysql8使用caching_sha2_password的身份验证机制,而以往的验证机制则是mysql_native_password,所以我们的解决思路就是进入mysql ssh,然后找到指定的数据库用户名,把它的密码验证机制更改为旧的验证机制;

第一步:打开终端SSH,输入命令,进入mysql

mysql -u root -p

输入以上命令后,会提示输入mysql数据库root用户的密码,输入密码回车,即可登录。注意,密码输入是不显示的,输完直接回车即可。

第二步:输入 use mysql命令,在输入 select user,host from user;

use mysql
select user,host from user;
图片[1]-解决php7.2连接mysql8.4失败的问题-网创联盟

这里会列出你的mysql数据库里面所有的用户名和主机,选择你需要更改密码验证方式的数据库用户名,然后用一下命令更改:↓

ALTER USER '数据库用户名user'@'主机名host' IDENTIFIED WITH mysql_native_password BY '密码';

改完以后,输入以下命令,刷新一下↓

FLUSH PRIVILEGES;

到此,就更改完成了,需要注意的是,这里的密码改了,宝塔后台数据库管理地方的密码不会同步,需要把这里的密码填写到网站设置中,不要搞错哦。

THE END
喜欢就支持一下吧
点赞11
评论 抢沙发

请登录后发表评论

    暂无评论内容