生产环境直接安装比较好,以及使用集群环境,本文仅测试交流使用,我用来写分布式im测试使用:
nami-im: 分布式im, 集群 zookeeper netty kafka nacos rpc主要为gate(长连接服务) logic (业务) lsb (负载均衡)store(存储)
1. mongodb特点:
- 支持存储海量数据;(例如:直播中的打赏数据);
- 支持频繁的数据读写;(例如:游戏道具);
- 数据安全性不高,存在数据误差(丢失数据);
- mongoDB不支持多表操作,不支持事务;
- mongoDB使用Bson存储格式,支持动态字段管理;
2. mongoDB与mysql、redis对比:
与redis对比:
1. redis纯内存数据库,内存不足时触发淘汰策略,mongoDB使用内存加磁盘的存储策略具有高扩展性;
2. mongoDB使用Bson存储格式,支持动态字段管理方便扩展;
与mysql对比
1. mongoDB不支持多表操作,不支持事务;
2. mongoDB使用Bson存储格式,支持动态字段管理;
查询效率对比
Redis > MongoDB > MySQL
3. github 地址:
GitHub - mongodb/mongo: The MongoDB Database
4. docker 下载mongo 4.4版本镜像:
docker pull mongo:4.4
5. docker命令安装:
# –auth:需要密码才能访问容器服务
docker run -itd --name mongo -v /docker/mongodb/data:/data/db -p 27017:27017 mongo:4.4 --auth
6. 进入mongo 添加账号:
docker exec -it mongo mongo admin
7. 添加账号:
db.createUser({ user:'root',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},'readWriteAnyDatabase']});
# 退出指令:
exit
8. 我安装的navicat for mysql 16 mongo db 不支持了。。。前面版本mongo db 也能用记得,用idea datagrip 测试的连接成功:
9. spring boot 使用mongo db
a. pom配置:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
b. yml配置:
spring
data:
# mongo 配置
mongodb:
host: 192.168.164.146
port: 27017
username: root
# 注意要使用双引号
password: "123456"
# 指定数据库
database: nami-im
authentication-database: admin
auto-index-creation: true
c. 创建model类:
需要注意的地方
1.如图所示:document注解处 写表名
2. @Id 注解和id 字段不要动复制过去。
3. 业务字段加个@Field 就可以了
4. 创建完就可以测试了
d. 使用mongoTemplate:
e: 完美解决。如果还是不懂可以把我的代码下载下来看一看,就在本文的开始地方哦!
注: 推荐使用构造注入,或lombok注解@AllArgsConstructor文章来源:https://www.toymoban.com/news/detail-637299.html
@Autowired @Resource 不推荐使用了文章来源地址https://www.toymoban.com/news/detail-637299.html
到了这里,关于docker 安装mongodb 虚拟机安装mongodb的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!