# study-mongodb
mogodb_zhujw
Mongodb数据库入门到实战: 结合实践案例,以任务为驱动,对Mongodb技术进行梳理,让开发者快速掌握Mongodb数据库。
# MongoDB是什么
MongoDB并非芒果的意思,而是源于 Humongous(巨大)一词。中文叫盲狗db
MongoDB是面向文档的数据库,不是关系型数据库。它将原来**‘行’(row)的概念换成了更加灵活的‘文档’(document)模型**。面向文档的方式可以将文档和数组内嵌进来,所以用一条记录就可以表示很复杂的层次关系。 MongoDB没有模式,文档的键不会事先定义也不会固定不变。
Mongodb主要由文档(Document)、集合(Collection)、数据库(Database)三部分组成。
一个MongoDB实例,由多个数据库(Database)组成;一个数据库,由多个集合(Collection)组成;一个集合,又由多个文档组成。注意Mongodb单个文档大小上限为16MB,确保不会使用过多的内存RAM或在传输过程中占用过多的带宽。为了存储更大的文档,Mongodb提供了GridFS。

## 程序员注重对象,您的数据库也是。
MongoDB 是一个文档数据库,即在类似 JSON 的文档内存储数据。我们认为面对数据,这种方法非常自然,比传统的排/列模型更加直观和强大。
## 丰富的 JSON 文档
● 自然、高效的数据处理方法。
● 支持将数组和嵌套对象存储为值。
● 支持灵活、动态结构。
## 强大的查询语言
● 查询语言丰富和直观,支持通过任何字段进行筛选和排序,而不受其在文档内的嵌套方式影响。
● 支持聚合和其他现代使用案例,如基于地理的搜索、图搜索和文本搜索。
● 查询本身是 JSON 格式,因此很容易进行组合。无需串联字符串即可动态生成 SQL 查询。
## MongoDB特性
MongoDB的3大技术特色如下所示:
除了上图所示的还支持:
二级索引、动态查询、全文搜索 、聚合框架、MapReduce、GridFS、地理位置索引、内存引擎 、地理分布等一系列的强大功能。
但是其也有些许的缺点,例如:
● 多表关联: 仅仅支持Left Outer Join
● SQL 语句支持: 查询为主,部分支持
● 多表原子事务: 不支持
● 多文档原子事务:不支持
● 16MB 文档大小限制,不支持中文排序 ,服务端 Javascript 性能欠佳
## MongoDB适用场景
MongoDB的应用已经渗透到各个领域,比如游戏、物流、电商、内容管理、社交、物联网、视频直播等,以下是几个实际的应用案例:
● 游戏场景:使用MongoDB存储游戏用户信息,用户的装备、积分等直接以内嵌文档的形式存储,方便查询、更新。
● 物流场景:使用MongoDB存储订单信息,订单状态在运送过程中会不断更新,以MongoDB内嵌数组的形式来存储,一次查询就能将订单所有的变更读取出来。
● 社交场景:使用MongoDB存储用户信息,以及用户发表的朋友圈信息,通过地理位置索引实现附近的人、地点等功能。
● 物联网场景:使用MongoDB存储所有接入的智能设备信息,以及设备汇报的日志信息,并对这些信息进行多维度的分析。
● 视频直播:使用MongoDB存储用户信息、礼物信息等。

# MongoDB的安装和配置
## 安装前的准备
### 1.芒果数据库官网地址:https://www.mongodb.com/
备用下载链接:http://dl.mongodb.org/dl/win32/x86_64
### 2.选择合适的Mongodb社区版或企业版
下载可以选择 zip 格式或者 msi 格式,msi 格式就是下一步、下一步安装。我们讲解 zip格式。
### 3.解压缩这个文件夹,建议不要有中文路径
## 安装说明
### 1. 文件配置
进入解压后的文件夹,新建data和log文件夹,并在log文件夹下,新建mongod.log空文件
新建mongod.conf文件与bin文件夹同级
mongod.conf写入以下内容

注:dbpath和logpath根据自己的具体路径进行修改
### 2. 安装
开始---运行--cmd (ctrl+shift+Enter)调出windows终端,在mongodb解压目录的bin目录下执行如下命令:例如
mongod --config D:\mongodb-win32-x86_64-windows-5.0.11\mongod.conf--install --serviceName mongodb
执行后的结果可以在控制面板---管理工具--服务列表中查看到服务名为mongodb的进程。
注:在cmd操作下执行一定要以管理员身份运行,否则可能造成安装失败
正常情况下执行后窗口没有任何反应,其实是正常在生成data下默认的几个数据库文件,可以查看是否已经在data目录下生成初始化文件。
### 3. 查看服务及启动服务
启动/停止mongodb:
net start/stop mongodb
## 客户端工具推荐
MongoDB客户端工具推荐:
### 1、NoSQL Manager for MongoDB Freeware
https://www.mongodbmanager.com/download

### 2、Navicat Premium全能数据库工具(强烈推荐)
Navicat Premium 是一套数据库开发工具,让你从单一应用程序中同时连接 MySQL、MariaDB、MongoDB、SQL Server、Oracle、PostgreSQL 和 SQLite 数据库。它与 Amazon RDS、Amazon Aurora、Amazon Redshift、Microsoft Azure、Oracle Cloud、MongoDB Atlas、阿里云、腾讯云和华为云等云数据库兼容。你可以快速轻松地创建、管理和维护数据库。
默认情况下Navicat 不显示mongodb默认三个数据库,需要显示隐藏的项目


### 3、Robo 3T
https://robomongo.org/download
# 教材及素材获取
https://www.ossbar.com/#/productDetail?proData=%7B%22productId%22%3A315,%22skuId%22%3A972,%22shopId%22%3A138%7D
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
NOSQL数据库入门到实战: 结合实践案例,以任务为驱动,对Mongodb、Redis数据库技术进行梳理,让开发者快速掌握Mongodb和Redis数据库。Mongodb主要由文档(Document)、集合(Collection)、数据库(Database)三部分组成。
资源推荐
资源详情
资源评论


























收起资源包目录


























































































共 41 条
- 1
资源评论


Java程序员-张凯
- 粉丝: 1w+
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- MFC编程基础1基于对话框Windows应用程序.doc
- 解析计算机通信与网络课程教学.docx
- 信息系统项目管理师考试笔记重点难点.doc
- 互联网思维与传统企业转型.ppt
- 初中数学幂的运算法则基础测试卷.doc
- 网络安全实验综合实验网络安全系统的设计与实现.doc
- ARM嵌入式软件开发.ppt
- 大数据及档案管理.ppt
- 互联网发展趋势报告V1.docx
- C语言程序设计方案报告.doc
- 连锁超市企业网站建设方案.doc
- 面向金融互联网容器服务化平台.pptx
- 大数据中心选址调研研究报告.doc
- 浅析血站档案管理信息化建设.docx
- 省级城乡规划行业统计空间数据库建设探讨.docx
- 单片机的温湿检测控制系统设计.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
