mongodb基本概念 && docker安装
https://blog.csdn.net/packge/article/details/126539320
docker run -itd --name mongo -v /home/docker/mongodb/data:/data/db -p 27017:27017 mongo:4.4 --auth
docker exec -it mongo mongo admin
db.createUser({ user:'root',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},'readWriteAnyDatabase']});
db.grantRolesToUser("root", [{ role: "clusterMonitor", db: "admin" }])
db.auth('root', '123456')
---------------------
1mongoDb采用内存加磁盘的方式存储数据;
2mongoDb支持数据分片,当单一的服务器中磁盘不够用的时候,还可以串联其他服务器;
3客户端的请求到达内存时,先在日志中记录下操作记录,然后再去操作内存;
4内存中的日志每10ms向磁盘中的日志进行同步一次,数据则每分钟同步一次;
5客户端先去内存中查询数据,内存中没有再去查询磁盘;
6当客户端写入的时候,会先写入到内存中,内存中写入后请求直接返回,内存中的数据会根据同步策略同步到磁盘;
如果机器宕机,在重启服务的时候会解析磁盘中的日志和磁盘中的数据进行对比,将未入到磁盘中的数据写入磁盘,但可能会丢失10ms
的数据;
- 数据库用户角色:read、readWrite;
- 数据库管理角色:dbAdmin、dbOwner、userAdmin;
- 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
- 备份恢复角色:backup、restore;
- 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
- 超级用户角色:root
- 内部角色:__system
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了