Mongodb简介
MongoDB是由C++语言编写, 基于分布式文件存储的开源数据库系统.
在高负载的情况下, 添加更多的节点, 可以保证服务器性能.
MongoDB旨在为Web应用提供可扩展的高性能数据存储解决方案.
MongoDB将数据存储为一个文档, 数据结构由键值(key-value)对组成, MongoDB文档类似于JSON对象. 字段值可以包含其他文档, 数组, 和文档数组.
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的.
它和我们使用的关系型数据库最大的区别就是约束性,可以说文件型数据库几乎不存在约束性,理论上没有主外键约束,没有存储的数据类型约束等等
关系型数据库中有一个 "表" 的概念,有 "字段" 的概念,有 "数据条目" 的概念
MongoDB中也同样有以上的概念,但是名称发生了一些变化,严格意义上来说,两者的概念即为相似,但又有些出入
MongoDB概念 :
在mongodb中基本的概念是文档、集合、数据库
SQL术语 | MongoDB术语 | 说明 |
database | database | 数据库 |
table | collection | 数据库表/集合 |
row | document | 数据记录行/文档 |
column | field | 数据字段/域 |
index | index | 索引 |
table joins | 表连接, MongoDB不支持 | |
primary key | primary key | 主键, MongoDB自动将_id设置为主键 |
MongoDB数据类型 :
数据类型 | 描述 |
String | 字符串. 存储数据常用的数据类型. 在MongoDB中, UTF-8编码的字符串才是合法的 |
Integer | 整型数值. 用于存储数值, 根据所采用的服务器, 可分为32位或者64位 |
Boolean | 布尔值. 用于存储布尔值 |
Double | 存储双精度浮点值 |
Min/Max keys | 将一个值与BSON(二进制的JSON)元素的最低值和最高值相对比 |
Array | 用于将数组或列表或多个值存储为一个值 |
Timestamp | 时间戳. 记录文档修改或者添加的具体时间 |
Object | 用于内嵌文档 |
Null | 用于创建空值 |
Symbol | 符号. 该数据类型基本上等同于字符串类型, 但不同的是, 它一般用于采用特殊符号的语言 |
Date | 日期时间. 用UNIX时间格式存储当前日期或者时间. 可以在创建Date时自己指定时间 |
Object ID | 对象ID. 用于创建文档的ID |
Binary Data | 二进制数据. 用于存储二进制数据 |
Code | 代码类型. 用于在文档中存储JavaScript代码 |
Regular expression | 正则表达式类型. 用于存储正则表达式. |
MongoDB安装
MongoDB提供了可用于32位和64位系统的预编译二进制包, 可以在MongoDB官网下载: https://www.mongodb.com/download-center/community
在MongoDB2.2版本后已经不再支持Windows XP系统, 最新版本也没有32位系统的安装文件
到此为止, 环境变量和MongoDB安装已经完成了, 也可以选择自定义目录安装.
创建数据目录 :
MongoDB将数据目录存储在db目录下, 但是这个目录不会主动创建, 要在安装完成之后自己创建, 而且数据目录应该放在根目录下.
创建"C:datadb"目录
当然也可以将数据目录存放在其他磁盘, 但是启动MongoDB时候就需要指定数据目录, 而且是每次开启都需要指定(除非修改配置文件)