- MongoDB 本身
- 使用模型操作 Mongoose 使用 Schema + Model 来操作数据库
- 使用 ORM 来映射数据库
第一阶段:MongoDB 本身
重要概念:
- 非关系型数据库/文档型数据库
- 查询语句
- 数据库服务端
- 数据库客户端/数据库可视化客户端
依赖
- 安装 mongodb
- 连接数据库
sudo mongod --dbpath=./src/data/db
- 交互式命令行工具 mongo
在 mongodb 数据库下使用交互式命令行工具 mongo
# /src/data
mongo
下面就进入了交互式命令行:
- use 命令: 创建并切换到对应的数据库
- show 命令: 显示当前的数据库
在交互命令行函下 db 可以是一个命令,也可是一个看成一个 JavaScript 对象,具有“波粒二象性”。
- db 命令就是显示当前处在哪个数据下
- db.dropDatabase(),删除是调用了 dropDatabase 方法
- db.collectionname.drop(),删除集合调用了 drop 方法
- db.collectionname.insert({/content/})
- db.collectionname.find()
- $gt
- $lt
- $gte
- $lte
- db.collectionname.update({/目标/}, {/替换值/})
- db.collectionname.remove({/目标/})
- $type 操作符
- limit 限制
- sort 排序
- createIndex 创建索引
- 基本操作之外:聚合操作
- $sum
- $avg
- $min
- $max
- $push
- $addToSet
- $first
- $last
- 管道
- $projec
- $match
- $limit
- $skip
- $unwind
- $group
- $sort
- $geoNear
- 副本集
- 分片
- 备份(mongodump)与恢复(mongorestore)
- 监控
第二阶段:使用模型操作 Mongoose 使用 Schema + Model 来操作数据库
重要概念:
- 架构 Schema
- 模型 Model
第三阶段:使用 ORM 来映射数据库
重要概念
- 实体 Entity
- 存储库 Repository
在不同的 Node.js 服务器中使用 MongoDB 数据库
- express
- koa
- nestjs