spring-boot从2.1.x升级到2.3.x 整合spring-boot-starter-data-mongodb连接池配置问题

  • spring-data-mongodb 3.0以下,连接池配置可以使用配置类MongoClientOptions,

  • 但是在3.0以上版本,删除了这个类

  • 通过翻阅源码发现3.0版本创建MongoClient是通过MongoClients.create()方法,
    MongClients

  • 进一步点进去看ConnectionString
    连接配置

  • 所有的配置项,均是解析connectionString这个字段,也就是application.yml中配置的spring.data.mongo.uri这个参数

  • 查看官网(翻墙) [https://www.mongodb.com/docs/v4.2/reference/connection-string/]

  • 连接配置格式为mongodb://[username:password@]host1[:port1][,…hostN[:portN]][/[defaultauthdb][?options]]

  • 即: mongodb://用户名:密码@host:port,host:prot…/数据库名?authSource=admin…

贴上自己的一条配置

spring:
  data:
    mongodb:
    # mongodb://[username:password@]host1[:port1][,...hostN[:portN]][/[defaultauthdb][?options]]
      uri: "mongodb://root:root@192.168.1.15:27017/game?authSource=admin&minpoolsize=2&maxpoolsize=20&maxidletimems=6000&waitqueuetimeoutms=120000&connecttimeoutms=30000&heartbeatfrequencyms=10000"

独立模式配置书写

无密码 mongodb://mongodb0.example.com:27017
有密码 mongodb://username:password@mongodb0.example.com:27017/?authSource=admin

副本集模式

  • 对于副本集,请指定mongod 副本集配置中列出的实例的主机名。
  • 对于副本集,包括该replicaSet 选项。
无密码 mongodb://mongodb0.example.com:27017,mongodb1.example.com:27017,mongodb2.example.com:27017/?replicaSet=myRepl
有密码 mongodb://username:password@mongodb0.example.com:27017,mongodb1.example.com:27017,mongodb2.example.com:27017/?authSource=admin&replicaSet=myRepl

分片集群模式

无密码 mongodb://mongos0.example.com:27017,mongos1.example.com:27017,mongos2.example.com:27017
有密码 mongodb://username:passwor@mongos0.example.com:27017,mongos1.example.com:27017,mongos2.example.com:27017/?authSource = admin

如果用户名或密码包含 at 符号@、冒号:、斜杠/或百分号%字符,要使用编码

贴上官网的字段解释

uri格式释义

连接池相关配置

连接池释义

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值