MongoDB 简介和历史
1. MongoDB 简介
1.1 什么是 MongoDB?
MongoDB 是一个开源的、面向文档的 NoSQL 数据库,使用 JSON 风格的文档存储数据。它具有高度的灵活性和可扩展性,适用于处理大规模数据和高并发访问。
1.2 NoSQL 数据库的特点
- 非关系型:不使用传统的 SQL 关系型数据库模型。
- 分布式:易于扩展,支持水平扩展。
- 灵活性:文档模型允许存储复杂的数据结构。
- 高性能:适用于高吞吐量和低延迟的应用。
2. MongoDB 的历史
2.1 起源
MongoDB 由 10gen 公司(现为 MongoDB Inc.)于 2007 年开发,最初作为 PaaS(平台即服务)的一部分。2009 年,MongoDB 作为独立的开源项目发布。
2.2 发展历程
- 2010 年:MongoDB 1.0 发布,标志着其成为成熟的开源项目。
- 2012 年:MongoDB 2.2 发布,引入了聚合框架。
- 2015 年:MongoDB 3.0 发布,支持 WiredTiger 存储引擎。
- 2018 年:MongoDB 4.0 发布,支持多文档事务。
- 2020 年:MongoDB 4.4 发布,增强了查询和索引功能。
3. MongoDB 的核心概念
3.1 数据库(Database)
MongoDB 中的数据库是集合的物理容器。每个数据库在文件系统上都有自己的一组文件。
3.2 集合(Collection)
集合类似于关系型数据库中的表,但不需要预定义结构。集合存储文档。
3.3 文档(Document)
文档是 MongoDB 中的基本数据单元,使用 BSON(二进制 JSON)格式存储。文档类似于关系型数据库中的记录。
4. 安装和环境配置
4.1 安装 MongoDB
以下是在 Ubuntu 上安装 MongoDB 的步骤:
# 导入 MongoDB 的 GPG 密钥
wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add -
# 创建 MongoDB 的列表文件
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/5.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list
# 更新包列表
sudo apt-get update
# 安装 MongoDB
sudo apt-get install -y mongodb-org
4.2 启动 MongoDB 服务
sudo systemctl start mongod
4.3 验证安装
mongo --version
5. 基本操作
5.1 连接到 MongoDB
mongo
5.2 创建数据库
use myDatabase
5.3 创建集合
db.createCollection("myCollection")
5.4 插入文档
db.myCollection.insert({name: "John", age: 30})
5.5 查询文档
db.myCollection.find({name: "John"})
6. 实践练习
6.1 创建一个简单的博客系统
- 创建一个名为
blog的数据库。 - 创建一个名为
posts的集合。 - 插入几篇博客文章。
- 查询所有博客文章。
6.2 代码示例
use blog
db.createCollection("posts")
db.posts.insert({title: "First Post", content: "This is my first blog post."})
db.posts.insert({title: "Second Post", content: "This is my second blog post."})
db.posts.find()
7. 总结
通过本教程,您已经了解了 MongoDB 的基本概念、历史、安装步骤以及基本操作。接下来,您可以继续学习 MongoDB 的更多高级功能,如 CRUD 操作、索引和性能优化等。
8. 下一步
- 学习 MongoDB 的 CRUD 操作详解。
- 探索 MongoDB 的查询语言和操作符。
- 了解如何进行索引和性能优化。
希望本教程能帮助您快速入门 MongoDB,并为后续的学习打下坚实的基础。