用nodejs的sequelize连接数据库时,出现
Client does not support authentication protocol requested by server
原因是mysql8以后更改了加密方式
可以使用下方命令查看情况
// 启动Mysql服务
mysql.server start
// 登录Mysql(需要输入密码)
mysql -u root -p
// 选择数据库(这一步不可省略)
use mysql
// 查看plugin设置
select host, user, plugin from user;
// 可以看到root的plugin是caching_sha2_password,我们希望改成mysql_native_password
ALTER USER root@localhost IDENTIFIED WITH mysql_native_password BY 'root';
//最后的BY 'root'就是把密码设置成了root,你也可以写12345
FLUSH PRIVILEGES;#刷新权限