我有一个由3个节点组成的副本集,它们的状态如下:
server1:27001-下
server2:27001-下
server3:27001-辅助启动并运行
我正在维护使用mongoskin开发的遗留应用程序,我希望它能够在没有主节点可用于读取目的时连接到辅助节点。
我尝试将readPreference配置为次要,但没有用
var mongoUrl = "mongodb://user:pass@server1:27001,server:27002,server:27003/?replicaSet=repl_test_1&authSource=admin&readPreference=secondary"
var db = require('mongoskin').db(mongoUrl);
这是错误消息:
发生错误,调用SkinCursor.limit时没有回调来处理它。{MongoError:列表中没有有效的种子服务器 在服务器上。 (/appl/gref/gls-ws/soap/convertSingleCurrency/webService/core/node_modules/mongodb-core/lib/topologies/replset.js:1152:39) 在Object.onceWrapper(events.js:273:13) 在Server.emit(events.js:182:13) 在Server.EventEmitter.emit(domain.js:441:20) 在游泳池。 (/appl/gref/gls-ws/soap/convertSingleCurrency/webService/core/node_modules/mongodb-core/lib/topologies/server.js:269:68) 在Object.onceWrapper(events.js:273:13) 在Pool.emit(events.js:182:13) 在Pool.EventEmitter.emit(domain.js:441:20) 在连接。 (/appl/gref/gls-ws/soap/convertSingleCurrency/webService/core/node_modules/mongodb-core/lib/connection/pool.js:77:12) 在Object.onceWrapper(events.js:273:13) 在Connection.emit(events.js:182:13) 在Connection.EventEmitter.emit(domain.js:441:20) 在套接字。 (/appl/gref/gls-ws/soap/convertSingleCurrency/webService/core/node_modules/mongodb-core/lib/connection/connection.js:121:49) 在Object.onceWrapper(events.js:273:13) 在Socket.emit(events.js:182:13) 在Socket.EventEmitter.emit(domain.js:441:20)处名称:“ MongoError”,消息:“列表中没有有效的种子服务器”}
在mongo连接字符串上是否有任何配置可以在没有主服务器可用时允许应用程序故障转移到辅助服务器?