如何将MariaDB连接到Node.JS和Express.JS?

时间:2018-08-24 01:06:35

标签: web mariadb colt

我正在做Colt Steele的The Web Developer Bootcamp,现在到了要为YelpCamp应用程序启动数据库的地步。问题是,他正在使用MongoDB,而我不想使用它。我想使用MariaDB。如何获得Node JS的支持?我已经使用npm install将它添加到我的项目中,但是我不知道从这里去哪里。我找不到任何与nodejs和mariadb有关的指南。官方指南不适合初学者。我什至不知道它说了什么。

我不像他那样工作于Cloud9,因为他们不接受新注册。我正在使用命令行在计算机上运行node.js,并且一直在关注他的视频。

2 个答案:

答案 0 :(得分:4)

您可以使用新的MariaDB Connector/Node.js从Node.js连接到MariaDB数据库。

通过以下方式安装:

npm i mariadb@0.7.0

这是一个如何将连接器与promises一起使用的简单示例:

var mariadb = require('mariadb')

mariadb.createConnection({ // Open a new connection                                                                                                                                           
    user: 'root',
    host: '127.0.0.1',
    port: 3000
})
    .then(conn => {
        conn.query('SELECT "Hello world!" as my_message') // Execute a query                                                                                                                                
            .then(result => { // Print the results                                                                                                                                            
                for (row of result) {
                    console.log(row)
                }
            })
            .then(conn.destroy()) // Close the connection                                                                                                                                     
    })

执行此代码将产生以下输出: { my_message: 'Hello world!' }

Getting Started With the Node.js Connector页面上有一个示例,说明如何将连接池与async / await和promise一起使用。可在以下位置找到API文档:https://mariadb.com/kb/en/library/connectornodejs-promise-api/

答案 1 :(得分:0)

序列化

npm install --save sequelize@next
npm install --save mariadb

然后设置dialect: 'mariadb'

mariadb连接器比MySQL2快得多。我立即在平台上注意到了速度差异。

https://github.com/MariaDB/mariadb-connector-nodejs

MariaDB提供了基准测试,将连接器与流行的Node.js MySQL客户端进行了比较,包括:

promise-mysql版本3.3.1 + mysql版本2.15.0 mysql2版本1.5.3

promise-mysql  : 1,366 ops/sec ±1.42%
mysql2         : 1,469 ops/sec ±1.63%
mariadb        : 1,802 ops/sec ±1.19%