问题描述
使用 node.js 的 mysql 模块,连接本地数据库,报错
const db = mysql.createPool({
host:'127.0.0.1' , // 数据库的 IP 地址
user:'root', // 登录数据库的 账号
password:'111111', // 登录数据库的 密码
database:'my_db_01' // 指定操作的的数据库
})
ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client
问题原因
新旧版本密码算法不同引起的错误,只需要设置下密码方式为 mysql_native_password 就可以。
解决步骤
管理员身份运行命令提示符启动 mysql ,执行以下命令
注意:‘111111’ 改成自己的数据库密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '111111' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '111111';
FLUSH PRIVILEGES;
错误解决
文章如有错误,恳请大家提出问题,本人不胜感激 。 不懂的地方可以评论,我都会 一 一回复
文章对大家有帮助的话,希望大家能动手点赞鼓励,大家未来一起努力 长路漫漫,道阻且长