Learning Path
浏览 MongoDB 相关教程与章节。
SQL、MySQL、PostgreSQL、MongoDB、Redis、SQLite 与缓存系统。
教程
49
MongoDB Map Reduce Map-Reduce是一种计算模型,简单的说就是将大批量的工作(数据)分解(MAP)执行,然后再将结果合并成最终结果(REDUCE)。 MongoDB提供的Map-Reduce非常灵活,对于大规模数据分析也相当实用。 MapReduce 命令 以下是MapReduce的基本语法: >db.collection.mapReduce( function() {emit(key,va..
MongoDB 备份(mongodump)与恢复(mongorestore) MongoDB数据备份 在Mongodb中我们使用mongodump命令来备份MongoDB数据。该命令可以导出所有数据到指定目录中。 mongodump命令可以通过参数指定导出的数据量级转存的服务器。 语法 mongodump命令脚本语法如下: >mongodump -h dbhost -d dbname -o dbdirectory -..
MongoDB 监控 在你已经安装部署并允许MongoDB服务后,你必须要了解MongoDB的运行情况,并查看MongoDB的性能。这样在大流量得情况下可以很好的应对并保证MongoDB正常运作。 MongoDB中提供了mongostat 和 mongotop 两个命令来监控MongoDB的运行情况。 mongostat 命令 mongostat是mongodb自带的状态检测工具,在命令行下使用。它会间隔固定时间获取mongodb的..
MongoDB ObjectId 在前面几个章节中我们已经使用了MongoDB 的对象 Id(ObjectId)。 在本章节中,我们将了解的ObjectId的结构。 ObjectId 是一个12字节 BSON 类型数据,有以下格式: 前4个字节表示时间戳 接下来的3个字节是机器标识码 紧接的两个字节由进程id组成(PID) 最后三个字节是随机数。 MongoDB中存储的文档必须有一个'_id'键。这个键的值可..
MongoDB $type 操作符 在 MongoDB 中,$type 操作符用于查询具有指定类型的字段的文档。 MongoDB 的 $type 操作符用于查询字段的 BSON 数据类型。它允许您指定一个或多个类型,并返回匹配这些类型的文档。以下是 $type 操作符的详细介绍和示例。 语法:db.collection.find({ field: { $type: } }) field:要检查类型的字段。type:指定的 BSON ..
MongoDB 条件操作符在本章节中,我们将讨论如何在 MongoDB 中使用条件操作符。 在 MongoDB 中,条件操作符用于在查询文档时进行过滤、比较和逻辑操作。 这些操作符可以分为以下几类:比较操作符、逻辑操作符、元素操作符、数组操作符、以及其他常用操作符。 比较操作符 比较操作符有: 操作符描述示例$eq等于{ age: { $eq: 25 } }$ne不等于{ age: { $ne: 25 } }$gt大于{ age: ..
Mac OSX 平台安装 MongoDB MongoDB 提供了 OSX 平台上 64 位的安装包,你可以在官网下载安装包。 下载地址:https://www.mongodb.com/try/download/community 从 MongoDB 3.0 版本开始只支持 OS X 10.7 (Lion) 版本及更新版本的系统。 接下来我们使用 curl 命令来下载安装: # 进入 /usr/local cd /usr/..
MongoDB PHP 在php中使用mongodb你必须使用 mongodb 的 php驱动。 MongoDB PHP在各平台上的安装及驱动包下载请查看:PHP安装MongoDB扩展驱动 如果你使用的是 PHP7,请参阅:PHP7 MongoDB 安装与使用。 确保连接及选择一个数据库 为了确保正确连接,你需要指定数据库名,如果数据库在mongoDB中不存在,mongoDB会自动创建 代码片段如下: 创建集合 创建集合的..
MongoDB 查询文档 MongoDB 查询文档使用 find()、findOne() 方法。 find() 方法以非结构化的方式来显示所有文档。 语法 MongoDB 查询数据的语法格式如下: db.collection.find(query, projection) query:用于查找文档的查询条件。默认为 {},即匹配所有文档。projection(可选):指定返回结果中包含或排除的字段。 查找所有文档: 实例 [mycod..
MongoDB 正则表达式 正则表达式是使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。 许多程序设计语言都支持利用正则表达式进行字符串操作。 MongoDB 使用 $regex 操作符来设置匹配字符串的正则表达式。 MongoDB使用PCRE (Perl Compatible Regular Expression) 作为正则表达式语言。 不同于全文检索,我们使用正则表达式不需要做任何配置。 考虑以下 posts 集合..
MongoDB 关系 MongoDB 的关系表示多个文档之间在逻辑上的相互联系。 文档间可以通过嵌入和引用来建立联系。 MongoDB 中的关系可以是: 1:1 (1对1) 1: N (1对多) N: 1 (多对1) N: N (多对多) 接下来我们来考虑下用户与用户地址的关系。 一个用户可以有多个地址,所以是一对多的关系。 以下是 user 文档的简单结构: { '_id':ObjectId(�..
MongoDB 删除文档 在前面的几个章节中我们已经学习了 MongoDB 中如何为集合添加数据和更新数据,在本章节中我们将继续学习 MongoDB 集合的删除。 常用的删除文档方法包括 deleteOne()、deleteMany() 以及 findOneAndDelete()。 使用场景: 数据清理:删除不再需要的旧数据或无效数据。数据修正:在数据修正过程中删除错误的或重复的文档。自动化任务:在自动化脚本或任务中,根据特定条件删除文..
MongoDB 更新集合名 在 MongoDB 中,不能直接通过命令来重命名集合。 MongoDB 可以使用 renameCollection 方法来来重命名集合。 renameCollection 方法在 MongoDB 的 admin 数据库中运行,可以将一个集合重命名为另一个名称。 renameCollection 命令的语法: db.adminCommand({ renameCollection: 'sour..
MongoDB 复制(副本集) MongoDB复制是将数据同步在多个服务器的过程。 复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性, 并可以保证数据的安全性。 复制还允许您从硬件故障和服务中断中恢复数据。 什么是复制? 保障数据的安全性 数据高可用性 (24*7) 灾难恢复 无需停机维护(如备份,重建索引,压缩) 分布式读取数据 MongoDB复制原理 mongodb的复制至少需要两个节点。其中一个..
MongoDB 分片 分片 在Mongodb里面存在另一种集群,就是分片技术,可以满足MongoDB数据量大量增长的需求。 当MongoDB存储海量的数据时,一台机器可能不足以存储数据,也可能不足以提供可接受的读写吞吐量。这时,我们就可以通过在多台机器上分割数据,使得数据库系统能存储和处理更多的数据。 为什么使用分片 复制所有的写入操作到主节点 延迟的敏感数据会在主节点查询 单个副本集限制在12个节点 当请求量巨大时会出现内存不..
MongoDB Shell MongoDB Shell 是 MongoDB 提供的官方交互式界面,允许用户与 MongoDB 数据库进行交互、执行命令和操作数据库。MongoDB Shell 是基于 JavaScript 的,允许用户直接在命令行或者脚本中使用 JavaScript 语言来操作 MongoDB 数据库。 安装 MongoDB Shell MongoDB Shell 是 MongoDB 数据库安装包的一部分,因此,安装..
MongoDB 排序 在 MongoDB 中使用 sort() 方法对数据进行排序,sort() 方法可以通过参数指定排序的字段,并使用 1 和 -1 来指定排序的方式,其中 1 为升序排列,而 -1 是用于降序排列。 语法 sort()方法基本语法如下所示: db.collection.find().sort({ field1: 1, field2: -1 }) { field1: 1, field2: -1 }:指定要排序的字..
MongoDB 全文检索 全文检索对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式。 这个过程类似于通过字典中的检索字表查字的过程。 MongoDB 从 2.4 版本开始支持全文检索,目前支持15种语言的全文索引。 danish dutch english finnish french german hungari..
MongoDB 教程 MongoDB是一个流行的开源文档型数据库,它使用类似 JSON 的文档模型存储数据,这使得数据存储变得非常灵活。 MongoDB 是一个基于文档的 NoSQL 数据库,由 MongoDB Inc. 开发。 MongoDB 旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。 MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。 现在开始学习 ..
MongoDB 更新文档 在 MongoDB 中,更新文档的操作可以使用多种方法实现,常用的方法包括 updateOne()、updateMany()、replaceOne() 和 findOneAndUpdate()。 1、updateOne() updateOne() 方法用于更新匹配过滤器的单个文档。 语法: db.collection.updateOne(filter, update, options) filter:用于..
MongoDB 用户管理 在 MongoDB 中进行用户管理涉及用户的创建、分配角色、认证和登录等操作。下面是一个详细的说明,包含如何使用 MongoDB Shell (mongo) 或 MongoDB Compass 来管理用户。 使用 MongoDB Shell (mongo) 管理用户 以下是使用 MongoDB Shell (mongosh) 进行用户管理的详细说明,包括创建用户、分配角色、认证和登录的具体步骤。 1. ..
Windows 平台安装 MongoDB MongoDB 下载 最新版本的 MongoDB 提供了可用于 64 位系统的预编译二进制包,你可以从 MongoDB 官网下载安装,MongoDB 预编译二进制包下载地址:https://www.mongodb.com/try/download/community 注意:在 MongoDB 2.2 版本后已经不再支持 Windows XP 系统。最新版本也已经没有了 32 位系统的安装文..
NoSQL 简介 NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”。 在现代的计算系统上每天网络上都会产生庞大的数据量。这些数据有很大一部分是由关系数据库管理系统(RDBMS)来处理。 1970年 E.F.Codd’s提出的关系模型的论文 'A relational model of data for large shared data banks”,这使得数据建模和应用程序编程更加简单。通..
PHP7 MongDB 安装与使用 本文教程只适合在 PHP7 的环境,如果你是 PHP5 环境,你可以参阅 PHP MongDB 安装与使用。 PHP7 Mongdb 扩展安装 我们使用 pecl 命令来安装: $ /usr/local/php7/bin/pecl install mongodb 执行成功后,会输出以下结果: …… Build process completed successfully Installing &..