了解MongoDB数据库

了解MongoDB数据库

什么是MongoDB?

MongoDB是一个开源的文档型数据库管理系统,属于NoSQL数据库的一种。它由C++语言编写,旨在为开发人员提供简单易用的高性能数据库解决方案。MongoDB是跨平台的,可以在各种操作系统上运行。

为什么选择MongoDB?

MongoDB具有许多优点,包括:

  • 高性能:MongoDB使用内存映射技术,读取速度非常快;
  • 易用性:MongoDB支持JSON格式的数据存储,文档间可以有不同的字段,更容易理解和操作;
  • 可扩展性:MongoDB支持分片和复制等机制,方便随着数据量增长进行扩展。

在deepinout.com上安装MongoDB

首先,我们需要到MongoDB的官方网站下载安装包,地址为 https://www.mongodb.com。选择适合你操作系统版本的安装包,然后按照官方指引一步一步安装即可。

连接MongoDB数据库

安装完成后,我们可以使用MongoDB提供的命令行工具mongo来连接数据库。 打开终端,输入以下命令:

mongo

如果一切顺利,你将看到如下提示:

MongoDB shell version v4.4.8
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("4480301f-013b-43de-b59b-0d6e52498a33") }
MongoDB server version: 4.4.8
---
The server generated these startup warnings when booting: 
        2021-08-26T08:33:00.245+00:00: Access control is not enabled for the database. Read and write access to data and configuration is unrestricted
---
---
        Enable MongoDB's free cloud-based monitoring service, which will then receive and display
        metrics about your deployment (disk utilization, CPU, operation statistics, etc).

        The monitoring data will be available on a MongoDB website with a unique URL accessible to you
        and anyone you share the URL with. MongoDB may use this information to make product
        improvements and to suggest MongoDB products and deployment options to you.

        To enable free monitoring, run the following command: db.enableFreeMonitoring()
        To permanently disable this reminder, run the following command: db.disableFreeMonitoring()
---

---
>

创建和查询文档

在MongoDB中,数据以文档的形式存储,文档是一个键值对的集合。我们可以使用db对象来操作数据库。下面是一个简单的示例代码,演示了如何创建和查询文档:

// 创建一个集合
db.createCollection("users");

// 插入一条文档
db.users.insertOne({ name: "Alice", email: "alice@deepinout.com" });

// 查询所有文桇
db.users.find();

运行以上代码后,你将会看到如下输出:

{ "_id" : ObjectId("60f1b5bae7979b2038b48dd6"), "name" : "Alice", "email" : "alice@deepinout.com" }

更新文档

MongoDB也提供了更新文档的方法,可以使用updateOneupdateMany来更新文档。下面是一个更新文档的示例代码:

// 更新一条文档
db.users.updateOne({ name: "Alice" }, { $set: { email: "alice@example.com" } });

// 查询更新后的文档
db.users.find();

运行以上代码后,查询到的文档将会变成:

{ "_id" : ObjectId("60f1b5bae7979b2038b48dd6"), "name" : "Alice", "email" : "alice@example.com" }

删除文档

最后,我们也可以使用deleteOnedeleteMany来删除文档。下面是一个删除文档的示例代码:

// 删除一条文档
db.users.deleteOne({ name: "Alice" });

// 查询删除后的文档
db.users.find();

运行以上代码后,你将会看到输出为空。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程