Windows搭建MongoDB(5):Mongosh操作数据库常用命令总结

前言

大家好,我是WangHappy,一名主业前端,副业全栈的程序员,在这里我会分享关于前端进阶全栈的常用技术基本入门操作。 如果我的文章能让您有所收获,欢迎一键三连(评论,点赞,关注)。


在前端转型全栈的过程中,我们多数情况下使用 node.js 来开发服务端,而 node.js 里操作MongoDB数据库最常用的库是 mongoose,所以 mongosh 在实际开发中的使用频率并不是很高,多用于测试或查看数据库状态等场景。

本章只讲述 Mongosh 一些常用命令,例如:数据库基本的增、删、改、查(CRUD)和状态信息获取等操作,能够满足我们日常开发使用即可。

1.连接数据库

1.1 本地连接数据库

arduino 复制代码
mongosh --dbpath "path/data"

1.2 远程连接数据库

xml 复制代码
mongosh "mongodb://<hostname>:<port>"

举例:mongosh "mongodb://192.168.0.0:27017"

1.3 远程连接数据库并使用用户名密码验证

xml 复制代码
mongosh "mongodb://<username>:<password>@<hostname>:<port>"

举例:mongosh "mongodb://admin:admin123@192.168.0.0:27017"

2.查看数据库状态

2.1 查看当前使用的数据库

复制代码
db
  • 切换数据库
perl 复制代码
use <database_name>

举例:use admin

如果切换的数据库名称当前不存在,则会在 insert 插入数据时自动创建

注意:是插入数据时创建,而不是使用 use 切换时创建。

2.2 列出MongoDB实例下所有的数据库

show databases 可以查看目前所有的数据库,也可以使用简写 show dbs

sql 复制代码
show databases

2.3 列出当前数据库下所有集合

理论上每个数据库下都可以包含一个或多个集合,它有点类似于我们传统关系型数据库中的 的概念。

sql 复制代码
show collections

2.4 退出 mongosh

使用 exit 可以直接退出mongosh数据库连接,也可以使用 ctrl + c 快捷键来退出

bash 复制代码
exit

3.数据库的增删改查

3.1 插入数据

使用 insertOne 插入一条数据,使用 insertMany 插入多条数据,代码如下:

php 复制代码
// 插入一条数据
db.user.insertOne({ name: "Mike", age: 30 })

// 插入多条数据
db.user.insertMany([{ name: "Marry", age: 25 }, { name: "Kerry", age: 35 }])

3.2 删除数据

使用 deleteOne 删除单个文档,使用 deleteMany 删除多个文档

php 复制代码
// 删除单个文档
db.user.deleteOne({ name: "Alice" })

// 删除年龄30岁以下的数据
db.user.deleteMany({ age: { $lt: 30 } })

3.3 更新数据

使用 updateOne 更新单个文档,使用 updateMany 更新多个文档

php 复制代码
// 更新单个文档
db.user.updateOne({ name: "Alice" }, { $set: { age: 31 } })

// 更新多个文档
db.user.updateMany({ age: { $lt: 30 } }, { $set: { status: "young" } })

3.4 查询数据

使用 find 查询集合中所有数据

lua 复制代码
db.user.find()

查询某个条件的文档

php 复制代码
// 查询30岁以下的数据
db.user.find({ age: { $gte: 30 } })

3.5 创建索引

为某个字段创建索引

css 复制代码
db.user.createIndex({ name: 1 })

3.6 查看当前集合下的所有索引

scss 复制代码
db.users.getIndexes()

执行上述代码通常会返回两个索引,_idname

_id 索引:是自动创建,用于确保每条数据的唯一性。

name 索引:自定义索引,方便对指定字段的查询操作,例如 name: 1 表示按升序排列,如果改为 name: -1 表示降序。

4.其它命令

命令 作用
version() 查看当前使用 mongosh 的版本
help 查看 mongosh 的帮助信息, 查看某个命令的帮助信息,<name>.help(), 例如:db.help()

写在最后


本章整理了 mongosh 中一些常用命令,方便大家在日常使用中参考。虽然 mongosh 功能强大,但像 聚合查询 等更贴近业务场景的功能,我通常会通过 mongoose 来实现。接下来,我将继续编写关于 node.js + mongoose 的使用教程,并与大家分享更多实践经验。

相关推荐
`林中水滴`1 天前
MongoDB系列:MongoDB 分片集群环境搭建
mongodb
Msshu1231 天前
Type-C 多协议快充诱骗电压芯片XSP28 芯片脚耐压高达21V 电路简单 性价比高
mongodb·zookeeper·rabbitmq·flume·memcache
hexiekuaile2 天前
mongodb8.2知识
mongodb
The Sheep 20232 天前
MongoDB与.Net6
数据库·mongodb
点灯小铭2 天前
基于单片机的智能收银机模拟系统设计
单片机·嵌入式硬件·mongodb·毕业设计·课程设计·期末大作业
数据知道2 天前
一文掌握 MongoDB 存储引擎 WiredTiger 的原理
数据库·mongodb·数据库架构
清风6666663 天前
基于单片机的电加热炉智能温度与液位PID控制系统设计
单片机·嵌入式硬件·mongodb·毕业设计·课程设计·期末大作业
列御寇3 天前
MongoDB分片集概述
数据库·mongodb
列御寇3 天前
MongoDB分片集群——集群组件概述
数据库·mongodb
列御寇3 天前
MongoDB分片集群——mongos组件(mongos进程)
数据库·mongodb