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

相关推荐
楠枬几秒前
Redis 事务
数据库·redis·缓存
2401_880071401 分钟前
golang如何编写DNS查询工具_golang DNS查询工具编写大全
jvm·数据库·python
phltxy2 分钟前
怎么样持续提升自己的编程能力?
数据库
轻刀快马2 分钟前
穿透 MQ 专栏 (五):【终局之战】MySQL 和 MQ 的世纪联姻:扒开“分布式事务”的遮羞布
数据库·分布式·消息队列
Elastic 中国社区官方博客5 分钟前
Elasticsearch 9.4 为 Elastic AI 生态系统的下一阶段提供支持:Dell AI Data Platform(与 NVIDIA 合作)
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
预测模型的开发与应用研究6 分钟前
Oracle双库部署
数据库·oracle
m0_5913647313 分钟前
JavaScript中Object-hasOwn作为现代安全检测方案
jvm·数据库·python
m0_6245785915 分钟前
html标签怎么避免标签嵌套错误_div不能放在p内原因【详解】
jvm·数据库·python
霸道流氓气质31 分钟前
SpringAIAlibaba整合百炼平台实现多MCP Server调用示例及指定某MCP Server调用示例
数据库
被考核重击36 分钟前
WASM学习笔记
笔记·学习·wasm