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()

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

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

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

4.其它命令

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

写在最后


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

相关推荐
天空'之城3 天前
单片机基础核心知识点汇总(四十六)
数据库·单片机·mongodb
Dragon_qu·x4 天前
MongoDB 高可用集群部署
运维·数据库·mongodb·k8s·helm
MayBaymax12 天前
MongoDB 索引与事务
java·数据库·mongodb
&不羁之风&12 天前
从 MySQL 到 MongoDB:80 万系统日志(sys_log)平滑迁移完整实战(含 Windows 环境 mongoimport 安装与避坑)
mysql·mongodb
那人如此可好14 天前
MongoDB常用命令大全
mongodb·db
MayBaymax14 天前
MongoDB 基础概念
java·数据库·mongodb
DBA小马哥15 天前
MongoDB 迁移切流回滚怎么做?停机窗口、增量同步、数据校验全套检查清单
mongodb·迁移学习
我是唐青枫17 天前
MongoDB 从零到能用:文档、CRUD、聚合与 Node.js 实战
mongodb
唐青枫18 天前
MongoDB 从零到能用:文档、CRUD、聚合与 Node.js 实战
mongodb
wno70418 天前
Spring Boot整合MongoDB
spring boot·后端·mongodb