ER_BAD_DB_ERROR使用Sequelize连接数据库

时间:2013-10-11 07:46:30

标签: mysql node.js redis sequelize.js

我有一个利用npm包mysql,Sequelize和redis的项目。

以下情况很顺利:

app.use(express.session({
  store: new RedisStore({
    host: 'localhost',
    port: 6379,
    db:   2,
    pass: 'RedisPASS'
  }),
  secret: 'secret' // changed this value of course
}));

然后:

Sequelize.connection = new Sequelize('test_ddb',
  'root', 'root', { logging: false });

会引发以下错误:

Error: ER_BAD_DB_ERROR: Unknown database 'test_ddb'

我尝试了几件事,首先我认为Sequelize没有连接到MAMP的mysql而是连接到我系统的mysql,但我已经设置了所有的符号链接。像这样:

/var/mysql/mysql.sock -> /Applications/MAMP/tmp/mysql/mysql.sock

我甚至在这里改变了它:

/usr/local/mysql/bin/mysql -> /Applications/MAMP/Library/bin/mysql

终端中的mysql命令也使用MAMP数据库。

3 个答案:

答案 0 :(得分:0)

你确定MySQL正在运行吗?你能用MySQL命令行客户端连接到它吗?

答案 1 :(得分:0)

你能尝试初始化Sequelize的惯用方法:

var sequelize = new Sequelize('test_ddb', 'root', 'root')

答案 2 :(得分:0)

如果首先没有数据库,通常会导致此错误。

在运行Sequelize之前,在mysql中

CREATE DATABASE