Spring boot connect to MongoDB replica set running with an Arbiter(Spring Boot连接到使用仲裁器运行的MongoDB副本集)
问题描述
我的应用程序是一个Spring引导应用程序,应用程序配置属性文件如下所示:
....
spring.data.mongodb.host=ip
spring.data.mongodb.port=27017
spring.data.mongodb.admin.database=admin
spring.data.mongodb.database=myDB
spring.data.mongodb.username=su
spring.data.mongodb.password=su1$
....
现在问题是为了实现高可用性,MongoDB已移至主要-次要-仲裁器设置。 我应该做哪些更改才能连接到这一点。已尝试使用逗号分隔,但无济于事。
推荐答案
As Spring Bootdocumentation状态:
和spring.data.mongodb.port
不是 如果您使用的是Mongo 3.0 Java驱动程序,则支持。在这种情况下,spring.data.mongodb.uri
应用于提供所有 配置。 您可以设置spring.data.mongodb.uri
属性以更改URL和 配置其他设置,如副本集。
假设您有名为mc
且mongo1:27017
作为主要、mongo2:27017
作为次要和mongo3:27017
作为仲裁器的副本集,则可以使用:
spring.data.mongodb.uri=mongodb://su:su1$@mongo1:27017,mongo2:27017/myDB?replicaSet=mc
请注意that:
连接到副本集时,给出种子列表很重要
至少两个一神实例。如果您只提供连接
指向单个魔神实例,省略replicaSet
,客户端
将创建独立连接。
使用MongoDB连接字符串,您可以设置其他属性,如读取首选项。有关更多详细信息,请查看MongoDBdocumentation。
这篇关于Spring Boot连接到使用仲裁器运行的MongoDB副本集的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Spring Boot连接到使用仲裁器运行的MongoDB副本集


- 将 Java Swing 桌面应用程序国际化的最佳实践是什么? 2022-01-01
- java.lang.IllegalStateException:Bean 名称“类别"的 BindingResult 和普通目标对象都不能用作请求属性 2022-01-01
- 未找到/usr/local/lib 中的库 2022-01-01
- 在 Java 中,如何将 String 转换为 char 或将 char 转换 2022-01-01
- 如何使 JFrame 背景和 JPanel 透明且仅显示图像 2022-01-01
- 如何指定 CORS 的响应标头? 2022-01-01
- 获取数字的最后一位 2022-01-01
- Eclipse 的最佳 XML 编辑器 2022-01-01
- 转换 ldap 日期 2022-01-01
- GC_FOR_ALLOC 是否更“严重"?在调查内存使用情况时? 2022-01-01