mysql8.0版本更改了默认字符集为utf8mb4,也更改了登陆密码的默认加密校验方式为caching_sha2_password。而很多客户端连接方式并未来得及更新。导致升级到mysql8后原有项目老是连接数据库失败,现提供解决方法,供大家参考!

在安装wordpress时候会‘连接数据库出错’

以宝塔为例:

/etc/my.cnf

用记事本或其他文本工具打开该配置文件,在文件末尾加入如下配置:

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

[mysqld]

collation-server = utf8_unicode_ci

character-set-server = utf8

default_authentication_plugin = mysql_native_password

保存配置文件后,重启Mysql即可。

或者

先检查下数据库是否连接正常,是否是数据库登陆账户或者密码填写错误,如果都确认没有填写错误,那有可能是连接数据库的加密方式不一致,导致无法正常连接。

由于我Server上安装的是mysql8,加密规则是sha2,使用MySQLWorkbench可以正常连接,而换其他的数据库工具连接会提示“找不到指定的模块”:

所以可以推断出是加密方式有问题,因此我们需要修改加密方式为sha1 ,通过 xshell 进入命令行,执行如下命令:

mysql -hlocalhost -uroot -p

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

FLUSH PRIVILEGES;

alter user 'root'@'localhost' identified by '123456';

其中第一条执行后需要输入数据库连接密码,最后一条的’123456’即为你的数据库连接密码;

操作成功后,刷新下wordpress安装界面即可

参考:

https://jingyan.baidu.com/article/363872ec66e9cf6e4ba16f8d.html

https://blog.csdn.net/shengda_mao1118/article/details/101795974

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐