【发布时间】:2018-04-19 13:47:26
【问题描述】:
我有一个 mongoDB 集群
server1:27017
server2:27017
server3:27017
由于历史原因,IT 团队无法提供此集群的副本集名称。
我的问题是:在不知道replicaSet名称的情况下,以下mongoDB url是否合法,并且缺少可选的replicaSet可选参数会导致将来出现任何可能的问题?
mongodb://username:password@server1:27017,server2:27017,server3:27017
我正在使用 Java 通过以下方式设置 MongoDB 连接
String MONGO_REPLICA_SET = "mongodb://username:password@server1:27017,server2:27017,server3:27017";
MongoClientURI mongoClientURI = new MongoClientURI(MONGODB_REPLICA_SET);
mongoClient = new MongoClient(mongoClientURI);
【问题讨论】:
-
是的,这是合法的。在连接 URI 中包含“种子列表”的任何内容都暗示“正在寻找配置”,因此与“连接到单个实例”不同。真正的未来更关注DNS Seedlist。并且您始终可以在
MongoClient的“选项”中包含replicaSet 名称,而不是URI,就像我一直做的那样。现在,以及在不久的将来,它不会因为不在那里而破坏任何东西。
标签: mongodb mongodb-java