[eggjs/egg]egg-sequelize连接mysql报错

2025-11-04 406 views
6
What happens? 在使用egg-sequelize连接mysql数据库的时候,出现Access denied for user 'root'@'localhost' (using password: NO) 在终端进行输入的时候,通过用户名和密码是可以进入到mysql控制台的 单独在项目下使用sequelize进行连接,是完全没问题的(test.js是我的测试文件),我估计问题是出现在egg-sequelize上面 Mini Showcase Repository(REQUIRED)

https://github.com/lenLch/manual-example(这是我的仓库地址)

回答

2

@lenLch 相同代码拉下来没有问题,问题应该出在mysql的配置,建议关闭

4

@lenLch 相同代码拉下来没有问题,问题应该出在mysql的配置,建议关闭

第一,mysql那段我是注释掉的,删掉也不好使。第二,我有试过重新新建一个项目,出现同样的问题。

2

不需要密码密码为空 是两回事。 试试把密码设置为空字符串或者 null

5

不需要密码密码为空 是两回事。 试试把密码设置为空字符串或者 null

找到原因了。我把root用户删了,新建了一个用户,赋予最大权限(和root的权限是一样的),这样项目就没问题。 我不知道为什么root就不行,可能是我的mysql的roo用户有一些很奇怪的行为。

7

@lenLch 相同代码拉下来没有问题,问题应该出在mysql的配置,建议关闭

第一,mysql那段我是注释掉的,删掉也不好使。第二,我有试过重新新建一个项目,出现同样的问题。

兄弟,我没说你项目的mysql配置,我的意思是你的mysql server的配置

4

所以该问题已解了是把,那我 close 掉了哈。

1

我也反映下这个问题,咱们初始化的项目中有两个config,分别是

config/config.default.js database/config.json 我也是报错一直是Access denied for user 'root'@'localhost' (using password: NO) 后来我换了database/config.json的用户名,发现还是一样的错误,这就表示不是从database/config.json获取的账户密码,然后我在config/config.default.js里面添加usernamepassword不在报错了。

我觉得问题可能是,我使用run dev后,数据库的相关信息缺没有从database/config.json里面读取