在使用 sequelize 连接 mysql 数据库时,会出现这个错误:
SequelizeConnectionError: Client does not support authentication protocol requested by server; consider upgrading MySQL client大概的意思就是: MySQL 拒绝我们的连接请求,让我们尝试升级 MySQL 版本。
升级版本这种操作,改动比较大,可能会影响线上数据服务。因此,采用了一个影响范围较小的方式。
步骤二:修改本地用户密码 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '<local_password>'; Query OK, 0 rows affected (0.06 sec)
步骤三:更新状态 flush privileges; Query OK, 0 rows affected (0.06 sec)
修改密码校验方式的原因是 8.0 版的 mysql 使用的 caching_sha2_password 没有被当前使用的 mysql.js 支持
