概念
- MongoDB是一个开源的非关系型数据库。常用于作为项目的缓存数据库。因为本身提供了nodejs 可以操作的接口。所以在前端全栈工程项目中,也可以作为保存数据的仓库
- 本身需要进行安装使用,并且初始情况下,只能通过命令行的形式使用。不过可以使用第三方提供的可视化操作工具来间接操作MongoDB数据库-Navicat for MongoDB
核心概念
- MongoDB数据库
- 我们可以通过MongoDB来创建一到多个非关系型数据库。每个数据库都可以包含了多个集合。每个集合可以包含多个文档。文档在程序中就是一个对象数据。
- 应用:比如创建一个学生管理系统数据库:该数据库可以有3个集合;学生集合、老师集合、班级集合
- _id:
这个是每次新建文档时自动生成的特殊类型的数据,数据类型为
ObjectId
.含义是用于表示该文档的”身份证”,即每个文档都有一个专属的编号,我们可以通过_id
来精确找到每个文档。每个_id
在MongoDB中是唯一的。
MongoDB 安装(借用一手闫哥)
MongoDB官网下载地址:MongoDB Community Download | MongoDB
[扩展] MAC OS 下的安装配置
1.下载Mac下安装包 2.command+shift+.
打开mac隐藏文件 3.到 本地目录下 ~(/Users/机器名)
下找到隐藏文件 .bash_profile
4.加入代码到文件中 保存并退出
export MONGODB_HOME=/Users/yingside/work/mongodb export PATH=$PATH:$MONGODB_HOME/bin
5.命令行中运行 source .bash_profile
至此可以直接在命令行中运行mongodb相关命令
~ mongod --version
6.Mac在安装的时候指定了数据库和日志位置地址,但是关机之后再运行可能会出现问题,因此运行时,需要先指定数据库和日志位置(存放数据库与日志地址需要自己指定)
mongod --dbpath /Users/yingside/mongodb/db --logpath /Users/yingside/mongodb/log/mongo.log --logappend --fork
基本概念
-
db
:和mysql
的概念一致 -
collection
:集合,类似于mysql
中的表 -
document
:每个集合中的文档,类似于mysql
中的记录-
Primary Key
:和mysql
中的主键含义一致,每个document
都有一个主键 -
field
:文档中的字段
-
mongodb
属于nosql
中的文档型数据库,每个文档相当于是一个对象,它没有列的概念,也没有表关系
由于它是一个nosql
数据库:
-
无
sql
语句 -
使用极其简单,学习成本非常低
-
由于没有集合之间的关联,难以表达复杂的数据关系
-
存取速度极快
由于它是一个文档型
数据库:
-
数据内容非常丰富和灵活
-
对数据结构难以进行有效的限制
启动:
source .bash_profile
mongo
可视化工具 Robo 3T
我们可以在 Robo 3T 的官网上下载到该软件,官网地址为:Robo 3T | Free, open-source MongoDB GUI (formerly Robomongo)