gpt4 book ai didi

javascript - Mongoose 和多数据库错误处理

转载 作者:可可西里 更新时间:2023-11-01 09:38:59 27 4
gpt4 key购买 nike

我有 2 个数据库,1 个在 local 中,2 个在 mlab 中,如果我的连接有问题,使用此代码我可以检查其中一个数据库的错误.

mongoose.connect('mongodb://localhost/test', { useMongoClient: true });
mongoose.Promise = global.Promise;

const db = mongoose.connection;

db.on('error', console.error);
db.once('open', () => {
console.log(rangi.green('Connected To MongoDB'));
});

module.exports = db;


cron.schedule('1 * * * *', () => {
const sync = mongoose.createConnection('mongodb://sync:sync@ds143542.mlab.com:');
const remoteList = sync.model('User');
remoteList.find({}, (err, docs) => {
User.collection.insert(docs, status)
})

function status(err, result) {
if (err && err.code == 11000) {
console.log(rangi.red(`Err`));
} else {
console.info(rangi.magenta(`Sync Successful!`));
}
}
});

如何检查我的第二个数据库的连接?
如何添加 Multi-mongos 支持Multiple connections 和错误处理?

mongoose.connect('mongodb://mongosA:27501,mongosB:27501', { mongos: true }, cb);

最佳答案

您可能正在寻找类似以下的内容:

var localConnectStr = 'mongodb://localhost/test'
var mlabConnectStr = 'mongodb://<dbuser>:<dbpassword>@ds123456.mlab.com:25716/<dbname>'

var db = mongoose.createConnection(localConnectStr, { useMongoClient: true });
var mlabdb = mongoose.createConnection(mlabConnectStr, { useMongoClient: true });

您当然希望使用实际的 mlab uri 和数据库用户/密码。但这是您处理多个连接的方式。 See createConnection here.

您可以使用您拥有的代码,检查您的本地连接,来检查 mlab。

mlabdb.on('error', console.error);
mlabdb.once('open', () => {
console.log(rangi.green('Connected To Mlab MongoDB'));
});

关于javascript - Mongoose 和多数据库错误处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47404235/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com