首页 > 解决方案 > 由于本地主机解析,无法通过 Sequlize 连接到 mysql

问题描述

我正在尝试像这样连接到mysql:

new Sequelize('db', 'root', 'root', {
    host: 'localhost',
    dialect: 'mysql',
}

我得到了这个错误:

Access denied for user 'root'@'127.0.0.1' 

是的,我没有 的资助127.0.0.1,只有localhost

为什么sequelize解析localhost并尝试通过ip连接?我不想要这种行为,我不知道如何解决它,没有授予。

任何帮助,将不胜感激

UPD:这是某种魔法。两台计算机将 localhost 解析为 127.0.0.1,但一台没有。源代码和node_modules是一样的。Node版本也是一样的 UPD2我写了一个简单的脚本

const Sequelize = require('sequelize');

const sequelize = new Sequelize('mysql', 'root', 'password', {
  dialect: 'mysql',
  host: "localhost",
})
sequelize.authenticate()

现在我有两个不同的输出 Unhandled rejection SequelizeAccessDeniedError: Access denied for user 'root'@'localhost' (using password: YES)Unhandled rejection SequelizeAccessDeniedError: Access denied for user 'root'@'127.0.0.1' (using password: YES)

标签: sequelize.jsmysql2

解决方案


推荐阅读