安装完 node.js 和 sequelize.js 后,运行基本测试,提示“您需要手动安装 mysql 包”。
我尝试在网络和 Stackoverflow 上搜索此消息的原因。
我已经安装了:
- mysql服务器版本5.5.31-0ubuntu0.13.04.1
- 节点 v0.10.5
- 续集.js v1.6.0
安装完 node.js 和 sequelize.js 后,运行基本测试,提示“您需要手动安装 mysql 包”。
我尝试在网络和 Stackoverflow 上搜索此消息的原因。
我已经安装了:
您需要安装mysql
npm 模块:
npm install mysql
sequelize 没有 mysql 模块作为其自身依赖项的原因是因为它可以与其他数据库(例如 postgres 或 sqlite)一起使用。
全局安装mysql:
npm install -g mysql
对于使用 2017 年以上的用户mysql2
,该mysql
要求是 Sequelize v3 的一部分。
安装 Sequelize 的 v4(即npm i sequelize@4.23.0 --save
),它将与mysql2
.
有关更多信息,请参阅github repo 中的此问题。
// Using NPM
$ npm install --save sequelize
# And one of the following:
$ npm install --save pg pg-hstore
$ npm install --save mysql2
$ npm install --save sqlite3
$ npm install --save tedious // MSSQL
我已经尝试了几次'npm install mysql'(可能是强迫症),但它没有成功。真正有所作为的是上面 Svagis 的回答:
npm install -g mysql
现在我收到一个拒绝访问错误,这更让人松了一口气,因为这意味着进步。
作为一个好的做法,建议将这些库保留在项目本地,以便 npm 可以将其打包并安装在其他机器上。
我尝试安装包 mysql 和 mysql2。有用!
npm install mysql2 --save
您需要安装 mysql npm 模块。
npm install --save mysql2
按照上述所有步骤,我遇到了同样的问题。没有任何效果。最后发现我安装的sequelize-cli不是全局的,所以找不到mysql2模块。
所以我运行了以下命令。
npm uninstall sequelize-cli
npm install sequelize-cli -g --force // --force removed the previous bin files
最后,它起作用了:)