Node.js连接MongoDB v4 数据库

极客逐风说
• 阅读 1307

在这之前

确保当前环境下安装了mongodb的模块,且mongodb数据库已经启动,安装mongodb模块到当前目录可以通过

yarn add mongodb

我此时安装的是v4.1.4版本的mongodb

常见的连接方法

const { MongoClient } = require('mongodb')
const url = "mongodb://localhost:27017"
const dbName = 'myProject' // 这里写需要操作的数据库
const mongoClient = new MongoClient(url);

mongoClient.connect(function (err, client) {
    if (err) throw err
    console.log('connect to the database!')
    const db = client.db(dbName);
    //这中间可以写对db的任何操作
    client.close(); //关闭数据库
});

MangoDB官网的方法

看官方文档的时候发现的写法,通过异步的async await实现。

const { MongoClient } = require('mongodb')

async function main(){
    const url = "mongodb://localhost:27017"
    const client = new MongoClient(url);
    try {
        await client.connect();
        console.log('Access to database!')
        await listDatabases(client)
    } catch (e) {
        console.error(e);
    } finally {
        await client.close();
    }
}
main().catch(console.error);

//列出所有数据库
async function listDatabases(client) {
    const databasesList = await client.db().admin().listDatabases()
    console.log('Databases:')
    databasesList.databases.forEach(db => {
        console.log(`- ${db.name}`)
    })
}
点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
隔壁老王 隔壁老王
4年前
mongodb和python
MongoDB的安装与使用当前学习环境的Ubuntu16.04中已经安装好了MongoDB,版本为3.2.8,可以直接跳过此节.下载mongodb的版本,两点注意1.根据业界规则,偶数为稳定版,如3.2.X;奇数为开发版,如3.3.X2.32bit的mongodb最大只能存放2G的数据,64bit就没有限制MongoDB官网安装
Stella981 Stella981
3年前
Mac下安装mongdb
使用homebrew安装MongoDB:brewinstallmongodb这时MongoDB将被安装在/usr/local/Cellar/mongodb/4.0.3\_1(我的MongoDB版本是4.0.3\_1)3.配置MongoDB:安装完MongoDB后,需要配置一下MongoDB
Stella981 Stella981
3年前
Python将字符串转换成ObjectId类型
MongoDB自动生成的_id是ObjectId类型的。我需要将MongoDB的_id存到ElasticSearch中,而ElasticSearch又只能存String类型的_id,所以就涉及到两种类型的转换。ObjectId类型—→String类型这个非常简单
Stella981 Stella981
3年前
PHP特级课视频教程_第三十集 Mongodb安装和使用_李强强
!(http://static.oschina.net/uploads/space/2013/0111/221730_kF0Q_187233.jpg)教程内容:1.nosql数据库的优势2.mongodb数据库的优缺点3.mongodb数据库结构4.mongodb安装与使用5.mongodb的简单操作视频播放地址:
Wesley13 Wesley13
3年前
MongoDB的使用
一,链接MongoDB安装完成后,新建目录用于存放数据库文件运行cmd并将目录导到MangoDB的bin目录下运行命令:_\mongoddbpath"你的数据库文件夹"_至此你的MongoDBserver端启动完毕运行一个新的CMD窗口,重新导到MongoDB的bin目录下运行命令:_\mongo_至此你已经成功连接到MongoDB
Stella981 Stella981
3年前
Mongo数据库 客户端_启动.bat
Mongo数据库\_服务端\_启动.bat内容如下:rem启动mongoDB数据库服务端@echo(http://my.oschina.net/echolee1987)offremmongoDB的安装顶层目录d:rem设置显示文字颜色color0arem修改当前目录到bin下cdD:/Mong
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
3年前
Redis未授权访问漏洞复现学习
0x00前言前段时间看到想复现学习一下,然后就忘了越临近考试越不想复习!在这里插入图片描述(https://oscimg.oschina.net/oscnet/ec73a943a3d9e18184946ee4c4ca290e14f.jpg)常见的未授权访问漏洞Redis未授权访问漏洞MongoDB未授权访问漏
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
5个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(