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
相关推荐
jiayou648 小时前
KingbaseES 表级与列级加密完全指南
数据库·后端
葫芦和十三1 天前
图解 MongoDB 19|Oplog:复制的真正载体,不是文档是操作
后端·mongodb·agent
葫芦和十三1 天前
图解 MongoDB 20|复制延迟与 catch up:Secondary 为什么跟不上
后端·mongodb·agent
GBASE1 天前
G术时刻 |GBase 8s数据库事务并发控制之封锁技术介绍(下)
数据库
xiezhr2 天前
逛GitHub发现了一款免费的带AI功能的数据库管理工具
数据库·ai编程·dba
吃糖的小孩3 天前
给 QQ AI 机器人设计“可控记忆”:会话摘要、手动长期记忆与角色卡边界
数据库
葫芦和十三3 天前
图解 MongoDB 17|大集合与工作集:数据超过内存怎么办
后端·mongodb·面试
葫芦和十三3 天前
图解 MongoDB 18|复制集拓扑:Primary、Secondary 和 Arbiter 的分工
后端·mongodb·面试
葫芦和十三3 天前
图解 MongoDB 15|journal 与持久化:写入怎么不丢,崩溃怎么恢复
后端·mongodb·面试
葫芦和十三3 天前
图解 MongoDB 16|压缩:snappy、zstd 和 zlib 的取舍
后端·mongodb·面试