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操作示例。实际应用中,可以根据具体需求使用更多高级查询选项、索引操作以及其他数据库管理功能。

相关推荐
荒川之神2 分钟前
ORACLE 闪回技术简介
数据库·oracle
霍格沃兹测试开发学社测试人社区2 分钟前
软件测试学习笔记丨Flask操作数据库-数据库和表的管理
软件测试·笔记·测试开发·学习·flask
今天我又学废了19 分钟前
Scala学习记录,List
学习
王俊山IT42 分钟前
C++学习笔记----10、模块、头文件及各种主题(一)---- 模块(5)
开发语言·c++·笔记·学习
时差9531 小时前
【面试题】Hive 查询:如何查找用户连续三天登录的记录
大数据·数据库·hive·sql·面试·database
让学习成为一种生活方式1 小时前
R包下载太慢安装中止的解决策略-R语言003
java·数据库·r语言
Mephisto.java1 小时前
【大数据学习 | kafka高级部分】kafka中的选举机制
大数据·学习·kafka
秋意钟2 小时前
MySQL日期类型选择建议
数据库·mysql
南宫生2 小时前
贪心算法习题其三【力扣】【算法学习day.20】
java·数据结构·学习·算法·leetcode·贪心算法
Dxy12393102163 小时前
python下载pdf
数据库·python·pdf