mongodb常用操作命令

1、MongoDB Shell工具

perl 复制代码
mongosh

一般的链接命令格式为:

perl 复制代码
mongosh "mongodb://hostname:port"

示例:

perl 复制代码
mongosh "mongodb://localhost:27017"

2、显示所有数据库

perl 复制代码
show dbs
或者
show databases

3、切换到指定数据库(如果不存在则创建):

perl 复制代码
use <database_name>

4、删除当前数据库:

perl 复制代码
db.dropDatabase()

5、查看当前所使用的数据库

perl 复制代码
db

6、显示当前数据库中的所有集合:

php 复制代码
show collections

7、创建集合:

perl 复制代码
db.createCollection("<collection_name>")

8、删除集合:

perl 复制代码
db.<collection_name>.drop()

9、插入单个文档:

perl 复制代码
db.<collection_name>.insertOne({ key: "value" })

10、插入多个文档:

perl 复制代码
db.<collection_name>.insertMany([{ key1: "value1" }, { key2: "value2" }])

11、查询所有文档:

perl 复制代码
db.<collection_name>.find()

12、条件查询:

perl 复制代码
db.<collection_name>.find({ key: "value" })

13、查询第一个匹配的文档:

perl 复制代码
db.<collection_name>.findOne({ key: "value" })

14、更新单个文档:

perl 复制代码
db.<collection_name>.updateOne({ key: "value" }, { $set: { key: "new_value" } })

15、更新多个文档:

perl 复制代码
db.<collection_name>.updateMany({ key: "value" }, { $set: { key: "new_value" } })

16、删除单个文档:

perl 复制代码
db.<collection_name>.deleteOne({ key: "value" })

17、删除多个文档:

perl 复制代码
db.<collection_name>.deleteMany({ key: "value" })

18、创建索引:

perl 复制代码
db.<collection_name>.createIndex({ key: 1 })  // 1 表示升序,-1 表示降序

19、查看索引:

perl 复制代码
db.<collection_name>.getIndexes()

20、删除索引:

perl 复制代码
db.<collection_name>.dropIndex("index_name")

21、使用聚合管道:

perl 复制代码
db.<collection_name>.aggregate([
  { $match: { key: "value" } },
  { $group: { _id: "$field", total: { $sum: 1 } } }
])

22、创建用户:

perl 复制代码
db.createUser({
  user: "username",
  pwd: "password",
  roles: [{ role: "readWrite", db: "database_name" }]
})

23、删除用户:

perl 复制代码
db.dropUser("username")

24、查看用户:

perl 复制代码
db.getUsers()

25、备份数据库(mongodump):

perl 复制代码
mongodump --db <database_name> --out /path/to/backup

26、恢复数据库(mongorestore):

perl 复制代码
mongorestore --db <database_name> /path/to/backup/<database_name>

27、导出集合为 JSON 文件(mongoexport):

perl 复制代码
mongoexport --db <database_name> --collection <collection_name> --out /path/to/output.json

28、导入 JSON 文件到集合(mongoimport):

perl 复制代码
mongoimport --db <database_name> --collection <collection_name> --file /path/to/input.json

29、查看 MongoDB 版本:

perl 复制代码
db.version()

30、查看服务器状态:

perl 复制代码
db.serverStatus()

31、查看当前数据库状态:

perl 复制代码
db.stats()

32、退出 MongoDB Shell:

perl 复制代码
exit
相关推荐
全栈老石4 小时前
拆解低代码引擎核心:元数据驱动的"万能表"架构
数据库·低代码
倔强的石头_1 天前
kingbase备份与恢复实战(二)—— sys_dump库级逻辑备份与恢复(Windows详细步骤)
数据库
jiayou642 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
李广坤3 天前
MySQL 大表字段变更实践(改名 + 改类型 + 改长度)
数据库
爱可生开源社区4 天前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
AI全栈实验室4 天前
MongoDB迁移金仓踩了5个坑,最后一个差点回滚
mongodb
随逸1774 天前
《从零搭建NestJS项目》
数据库·typescript
加号35 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
シ風箏5 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker
李慕婉学姐5 天前
Springboot智慧社区系统设计与开发6n99s526(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端