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
相关推荐
276695829211 小时前
acw_sc__v2
数据库·acw_sc__v2·acw_sc__v2逆向·acw_sc__v2算法分析·acw_sc__v2分析·acw_sc__v2还原·acw_sc__v2-ck
Empty-Filled11 小时前
Claude Gateway 排查教程
网络·数据库·人工智能
椰猫子11 小时前
SpringMVC(SpringMVC简介、请求与响应(请求映射路径、请求参数、日期类型参数传递、响应json数据))
java·前端·数据库
2401_8822737211 小时前
pattern属性在旧版Android浏览器无效怎么办_手动验证补充【操作】
jvm·数据库·python
小的~~11 小时前
Milvus会存在SQL注入攻击吗?
数据库·sql·milvus
uElY ITER11 小时前
MySQL官网驱动下载(jar包驱动和ODBC驱动)【详细教程】
数据库·mysql
NCIN EXPE11 小时前
MySQL--》理解锁机制中的并发控制与优化策略
数据库·mysql·oracle
AI进化营-智能译站12 小时前
ROS2 C++开发系列11-VS Code一键生成Doxygen注释|让ROS2节点文档自动跟上代码迭代
java·数据库·c++·ai
村头的猫12 小时前
JWT 令牌的工作原理,结构和签名验证
前端·数据库·经验分享·微服务
许彰午12 小时前
CacheSQL(四):CacheSQLClient——用一张路由表实现水平扩展
java·数据库·缓存·系统架构·政务