MariaDB的序列化错误

yr9zkbsy  于 2022-12-18  发布在  其他
关注(0)|答案(5)|浏览(145)

我正在尝试将sequelize设置为我的MariaDB的ORM。
下面是我的设置:

var sequelize = require('sequelize');

var db= new sequelize('dbname', 'user', 'pass', {
  dialect: 'mariadb'
});

当我运行我的应用程序时,我收到以下错误:

/my/path/to/node_modules/sequelize/lib/dialects/mysql/connection-manager.js:23
    throw new Error('Please install mysql package manually');
    ^

Error: Please install mysql package manually

为什么sequelize试图连接mysql而不是我在dialect指令中指定的mariadb?我错过了什么吗?

j7dteeu8

j7dteeu81#

Sequelize现在具有方言mariadb,请勿使用mysql

npm install --save mariadb
npm install --save sequelize

连接代码序列化...

var sequelize = new Sequelize('database', 'username', 'password', {
  dialect: 'mariadb'
})
piok6c0g

piok6c0g2#

Sequelize在内部使用相同的库来连接MariaDB或MySQL,请特别查看安装一节中的http://docs.sequelizejs.com/en/latest/docs/getting-started/文档。
要使它工作,你只需要安装mysql包,所以:

$ npm install --save mysql2
pjngdqdw

pjngdqdw3#

前面的答案没有提到的是,您还必须将方言设置为MySQL... dialect: mysql,因为dialect: mariadb不存在。

6mzjoqzu

6mzjoqzu4#

您必须安装mysql或任何使用-g的方言。

npm i -g mysql
vxf3dgd4

vxf3dgd45#

如果您使用的是yarn

yarn add mariadb

相关问题