MongoDB
本文最后更新于:2022年7月25日 上午
NoSQL
非关系型数据库
- 易拓展,高性能,高复用
- key-value
- 无事务特性要求
ACID
(原子性,一致性,隔离性,持久型)
docker安装
NoSQL设计
内嵌设计
关联数据用数组存储
{
"username": "Mark",
"roles" : ["admin","user"]
}
- 减少关联查询
- 适合单类需要描述的属性
- 不经常变化的属性
父/子引用
一对多的数据映射
{
"uid":"xkasubdkhabcfkhafw",
"comment":[
"commentid1",
"commentid2",
"commentid3",
]
}
MongoDB
docker pull mongo
备份/恢复
mongodump -h <host> -u <user> -p <password> -d <selected database> -o <output path>
mongorestore -h <host> -u <user> -p <password> -d <selected database> --dir <backup path>
# 拷贝出容器
docker cp
# 挂载进容器
docker
Mongoose
https://mongoosejs.com/docs/
基于Model
和Scheme
操作mongodb的Collection
连接到db
const mongoose = require('mongoose')
mongoose.connect('mongodb://{user}:{password}@{host}:{port}/{db}',{
useNewUrlParser: true,
useUnifiedTopology: true
})
MongoDB
http://yoursite.com/2022/07/14/mongodb/