安装
网址: Try MongoDB Community Edition | MongoDB, MAC安装和使用MongoDB - 知乎 (zhihu.com), 注意不要忘记安装shell, 现有的mongodb社区版没有shell
基本概念
MongoDb 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它是可扩展的高性能数据存储解决方案,经常被用于非关系型数据的存储,能存储海量的数据。旨在为WEB应用提供可扩展的高性能数据存储解决方案。
- MangoDB 由 c++ 编写,运行效率自然不低
- 分布式文件存储系统
- 开源数据库系统,谁都可以用
- MongoDB 是一个面向文档存储的数据库,操作起来比较简单和容易。
- 文件存储格式为BSON(一种JSON的扩展),BSON 支持文档和数组的嵌套。
- Mongo支持丰富的查询表达式。查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数组。
- MongoDB支持各种编程语言:RUBY,PYTHON,JAVA,C++,PHP,C#等多种语言
| SQL术语/概念 | MongoDB术语/概念 | 解释/说明 |
|---|---|---|
| database | database | 数据库 |
| table | collection | 数据库表/集合 |
| row | document | 数据记录行/文档 |
| column | field | 数据字段/域 |
| index | index | 索引 |
| table joins | 表连接,MongoDb不支持 | |
| primary key | primary key | 主键,MongoDb自动将_id字段设置为主键 |
MangoDB 中常见的数据类型 (摘自菜鸟教程)
| 数据类型 | 描述 |
|---|---|
| String | 字符串,存储数据的常用数据类,在 mangoDB 中 UTF-8 编码的字符串才是合法的 |
| Integer | 整型数值,用于存储数值,根据你所采取的服务器,可以为分 64位和 32位。 |
| Boolean | 布尔值,存储布尔值(真假) |
| Double | 双精度浮点值,用于存储浮点值 |
| Min、Max keys | 讲一个值与 BSON (二进制 JSON) 元素的最低值和最高值相比 |
| Array | 用于将数组或者列表多个值存储为一个键 |
| TimeStamp | 时间戳,记录文档修改或者添加的具体时间 |
| Object | 用于内嵌文档 |
| Null | 用于创建空值 |
| Date | 日期时间,用 UNIX 时间格式来存储当前日期或时间。你可以指定自己的日期时间,创建 Date 对象,传入年月日信息 |
基本操作可以查看字典MongoDB 教程 | 菜鸟教程 (runoob.com)
NodeJS使用MongoDB
响应的驱动包有
- mongodbjs Quick Start — Node.js (mongodb.com) 官方驱动
- mongoosejsMongoose ODM v6.6.7 (mongoosejs.com) 针对mongoDB操作的一个对象模型库,封装了mongoDB对文档的一些增删改查等常用方法,让nodejs操作mongoDB数据库变得更加容易