MongoDB学习【三】MongoDB基本操作命令

1. 启动MongoDB服务:

在Windows环境下,通常你可以通过命令提示符(cmd)来启动MongoDB服务。首先确保已经正确设置了--dbpath参数指向数据库文件存储的位置,然后执行mongod服务程序:

shell 复制代码
mongod --dbpath D:\mongo

在Linux系统中,如果是通过包管理器安装的MongoDB服务,通常会有一个系统服务脚本来启动和停止MongoDB服务,可以通过以下命令启动:

shell 复制代码
systemctl start mongod

如果是在开发环境中,也可以直接运行mongod服务而不作为后台进程,不过生产环境中一般不会这样做。

2. 使用mongo shell进行交互式操作:

mongo shell是MongoDB自带的一个基于JavaScript的交互式环境,用于对MongoDB数据库进行操作。启动mongo shell很简单,只需在命令行输入mongo即可:

shell 复制代码
mongo

进入mongo shell后,可以连接到本地MongoDB服务器,如果MongoDB服务正在运行且默认监听27017端口,则无需额外指定连接参数。

3. 创建、删除数据库:

  • 创建数据库: 在MongoDB中,数据库会在第一次插入数据时自动创建。若要在mongo shell中显式创建一个空数据库,可通过切换至该数据库名的方式来实现,例如创建一个名为"myDatabase"的数据库:

    javascript 复制代码
    use myDatabase
  • 删除数据库: 要删除一个数据库,同样在mongo shell中,需要执行dropDatabase()方法:

    javascript 复制代码
    db.dropDatabase()

4. 创建、删除集合:

  • 创建集合: 集合相当于关系型数据库中的表,也是在插入第一条数据时自动创建。如果你想要明确创建一个集合而无须立即插入数据,可以使用createCollection()方法:

    javascript 复制代码
    db.createCollection("myCollection")
  • 删除集合: 删除集合使用dropCollection()方法:

    javascript 复制代码
    db.myCollection.drop()

5. CRUD操作(插入、查询、更新、删除文档数据):

  • 插入文档: 使用insertOne(), insertMany()方法向集合中插入文档:

    javascript 复制代码
    db.myCollection.insertOne({ name: "John", age: 30 })
  • 查询文档: 使用find()方法查询集合中的文档,可以结合各种查询条件:

    javascript 复制代码
    db.myCollection.find({ age: { $gt: 25 } })
  • 更新文档: 使用updateOne(), updateMany()或者replaceOne()方法来修改已存在的文档:

    javascript 复制代码
    db.myCollection.updateOne({ name: "John" }, { $set: { age: 31 } })
  • 删除文档: 使用deleteOne(), deleteMany()方法删除满足条件的文档:

    javascript 复制代码
    db.myCollection.deleteOne({ name: "John" })

以上是一些基本的MongoDB操作示例。实际应用中,可以根据具体需求使用更多高级查询选项、索引操作以及其他数据库管理功能。

相关推荐
L·S·P1 小时前
25MB 管理 100+ 种数据库:开源轻量客户端 DBX 介绍与上手
数据库·mysql·开源·database·dbx
m4Rk_3 小时前
【论文阅读】Agent 记忆机制(83):Inside Out——用可演化 PersonaTree 构建 Agent 的核心长期记忆
论文阅读·人工智能·学习·开源·github
笃行3503 小时前
KingbaseES KSQL Developer 的连接管理、数据处理与对象管理
数据库
ha_lydms3 小时前
MaxCompute中加密与解密函数
大数据·数据库·数据仓库·hadoop·dataworks·maxcompute·odps
Shadow(⊙o⊙)4 小时前
MySQL内置函数
数据库·mysql
鬓戈4 小时前
Rust 语言与 AI 应用生态调研及学习路径
人工智能·学习·rust
传奇开心果编程4 小时前
【SwiftUI娓娓道来】第3课:让界面活起来——交互与动画指南
学习·macos·ui·ios·swiftui·swift
笃行3504 小时前
金仓 KingbaseES PL/SQL 开发全攻略:异常处理、数据类型、调试优化与过程语句
数据库
xian_wwq4 小时前
【学习笔记】等保合规安全基线核查实战
笔记·学习
传奇开心果编程5 小时前
【Jetpack Compose进阶学与练】第14课:系列收尾复习总结;Compose项目常见坑点汇总;学习路线与后续学习方向
android·学习·ui·kotlin·android jetpack