gpt4 book ai didi

mysql - 如何修复sequelize 连接错误?

转载 作者:行者123 更新时间:2023-11-29 09:32:44 24 4
gpt4 key购买 nike

我正在使用 Node、Express 和 MySql 构建一个应用程序。我正在使用 MySql 版本 8.0。我正在使用 Sequelize 和 MySQL2 npm 包连接到我的数据库。我的数据库连接设置如下,如 Sequelize 文档中所述:

config.js

const Sequelize = require("sequelize");

module.exports = new Sequelize("call_on_me", "root", "my password", {
host: "localhost",
dialect: "mysql",
operatorAliases: false,

pool: {
max: 5,
min: 0,
acquire: 30000,
idle: 10000
}
})

我在服务器文件中测试连接,如下所示:

服务器.js

const db = require("./config/config");

db.authenticate()
.then(() => console.log("Database connected!"))
.catch(err => console.log("Error: " + err));

当我启动服务器时,我收到一条错误消息:

错误:SequelizeConnectionError:客户端不支持服务器请求的身份验证协议(protocol);考虑升级MySQL客户端

据我了解,8.0 是目前最高的版本,所以我找不到任何有关升级的信息。这让我相信我的配置连接中存在某种错误。我错过了什么吗?或者我只是无法理解一些我应该知道的非常基本的东西?

如果您需要查看另一段代码,请告诉我。

预先感谢您的帮助。

最佳答案

您必须更改身份验证模式,以便它像以前版本的 mysql 一样工作

将其添加到您的 my.cnf:

[mysqld]
default_authentication_plugin=mysql_native_password

在添加任何用户之前执行此操作。

关于mysql - 如何修复sequelize 连接错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58330900/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com